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/