Jason Dillon <[EMAIL PROTECTED]> wrote on 15/08/2003 09:30:05 AM:

> 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 
No, it's not.

> this?  I have looked over the source and it does not appear that any 
> jelly fluff is done to the project.xml file.
Interpolation of elements is allowed, using ${pom....}.

> 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.
Can you give me some use cases? The multiproject plugin was written to 
address exactly these issues.

> 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.
This can be done by specifying a parent project using <extend></extend>

> 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.
Why not just use XML entities?

> 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.
Yep. See the dependency convergence report as part of the multiproject 
plugin:

http://maven.apache.org/dependency-convergence-report.html

--
dIon Gillard, Multitask Consulting
Blog:      http://blogs.codehaus.org/people/dion/


Reply via email to