Hello, the website says that "project.xml form, is now processed as a
Jelly script "
(http://maven.apache.org/reference/user-guide.html#POM%20Interpolation
) but it does not appear to be having like it is a jelly script at all.
Is the user guide not valid? Is there a special property to enable
this? I have looked over the source and it does not appear that any
jelly fluff is done to the project.xml file.
IMO I think that it would be very beneficial if it was a jelly script
so that Maven in general is more flexible. I understand not wanting to
put much logic into the project.xml, but it would make management of
large projects much easier.
Specifically I was looking for a way to define common dependencies for
a large project (Apache Geronimo) so I could better manage version
numbers of the dependencies. I did not wish to put all of the depends
into a parent project as that would force each child project to have
additional dependencies on its classpath which might not be a good
thing, nor do I want each and every module to try to download
SNAPSHOTS, especially if they do not even need that depend.
So I thought about using properties like
'dependency.commons-logger.version=1.0.3' and then specify the property
as the content for <version/>, which works fine if the property is
defined in the child modules project.properties, or if the property is
in the parent and the child is always invoked through the reactor.
This is not the case with Geronimo, so this method fails.
James and I were chatting about this a tad... I was under the
impression that I could use jelly in project.xml (drawn conclusion from
web page and some bad tests I made). He suggested using <x:parse
xml="../../dependencies.xml"/> and then selecting out dependencies by
name and then copying them into the project.xml. I think this would be
very useful and shows where project.xml as a jelly script would be
desirable.
I think this is a good idea, but wanted to hear what you guys have to
say.
Also I was talking to James about the problem of versioning
dependencies in general and how it would make sense if Maven supported
more symbolic names (similar to SNAPSHOT) but which could point to the
latest stable release. It probably makes sense to provide some sort of
version alias mechanism, as it becomes problematic to effectively
maintain version numbers in a large project. Take Maven for example,
there are a few plugins which use different yet compatible versions of
dependencies, which only results in additional overhead. If all
plugins are compatible with a specific version, then it would make
sense for them to all use that version.
Anyways I have been up for way too long, it was light when I woke up
and it is light again, so I am gonna crash now.
Cheers,
--jason
- Re: project.xml is a jelly script? Jason Dillon
- Re: project.xml is a jelly script? Paul Libbrecht
- Re: project.xml is a jelly script? Luke Taylor
- Re: project.xml is a jelly script? Jason van Zyl
- Trying to use Artifact Plugin... Eric Pugh
- Re: project.xml is a jelly script? Luke Taylor
- Re: project.xml is a jelly script? Paul Libbrecht
- Re: project.xml is a jelly script? Mark McBride
- Re: project.xml is a jelly script? Jason van Zyl
- Re: project.xml is a jelly script... Mark McBride
- Re: project.xml is a jelly script? dion
