SortMojo! Now thats the best idea I've heard yet.

Eric


On 12/19/05, Rinku <[EMAIL PROTECTED]> wrote:
>
> I am +1 for the existing format. Supporting more would be a maintenance
> add-on.
>
> The only thing I can suggest is that may be certain sections could be
> factored out (something like profiles.xml) into separate files (optional)
> and merged at build time before the pom is processed. And I think this
> could
> be driven by the fact - what are frequently 'touched' sections after an
> 'initial' POM has been setup for a project.
>
> For POMs with looooong list of dependencies, would it be possible to sort
> the dependencies(or other elements) in an alphabetical order to ensure
> they
> can be located easily? .... may be we could whip up a SortMojo ;-) ......
> just thinking out loud!
>
> cheers,
> Rahul
>
>
> ----- Original Message -----
> From: "Matt Raible" <[EMAIL PROTECTED]>
> To: "Maven Users List" <users@maven.apache.org>
> Sent: Thursday, December 15, 2005 2:06 PM
> Subject: Is it possible to make pom.xml simpler?
>
>
> After seeing what the Spring Developers have done to simplify Spring
> context files, I can't help but think the same thing is possible for
> Maven 2's pom.xml.  Is it possible to add namespaces and make
> something like the following possible?
>
> Before:
>
>    <dependency>
>      <groupId>springframework</groupId>
>      <artifactId>spring</artifactId>
>      <version>1.2.6</version>
>    </dependency>
>
> After:
>
> <dep:artifact name="org/springframework/spring" version="1.2.6"/>
>
> Or just allow attributes to make things a bit cleaner?
>
> <dependency groupId="org.springframework" artifactId="spring"
> version="1.2.6"/>
>
> Allowing 1 line instead of 5-6 lines per dependency would allow me to
> cut my dependencies listing from 140 lines of XML to 37 lines.  When
> the Spring guys allows a couple of elements as attributes (<ref> and
> <value>) - it made writing Spring context files *much* easier.
>
> Here's an example of my simplified version:
>
> <dependencies>
>    <dependency groupId="cargo" artifactId="cargo" version="0.6"
> scope="test"/>
>    <dependency groupId="commons-lang" artifactId="commons-lang"
> version="2.0"/>
>    <dependency groupId="commons-logging" artifactId="commons-logging"
> version="1.0.4"/>
>    <dependency groupId="displaytag" artifactId="displaytag"
> version="1.0" scope="runtime">
>      <exclusions>
>        <exclusion artifactId="xalan" groupId="xalan"/>
>      </exclusions>
>    </dependency>
>    <dependency groupId="uk.ltd.getahead" artifactId="dwr"
> version="1.0" scope="runtime"/>
>    <dependency groupId="org.hibernate" artifactId="hibernate"
> version="3.0.5">
>      <exclusions>
>        <exclusion artifactId="jta" groupId="javax.transaction"/>
>      </exclusions>
>    </dependency>
>    <dependency groupId="geronimo-spec" artifactId="geronimo-spec-jta"
> version="1.0.1B-rc4"/>
>    <dependency groupId="jmock" artifactId="jmock" version="1.0.1"
> scope="test"/>
>    <dependency groupId="junit" artifactId="junit" version="3.8.1"
> scope="test"/>
>    <dependency groupId="jwebunit" artifactId="jwebunit" version="1.2"
> scope="test"/>
>    <dependency groupId="httpunit" artifactId="httpunit" version="1.6"
> scope="test">
>      <exclusions>
>        <exclusion artifactId="js" groupId="rhino"/>
>      </exclusions>
>    </dependency>
>    <dependency groupId="log4j" artifactId="log4j" version="1.2.11"/>
>    <dependency groupId="postgresql" artifactId="postgresql"
> version="8.1-404.jdbc3"/>
>    <dependency groupId="javax.servlet" artifactId="servlet-api"
> version="2.4" scope="provided"/>
>    <dependency groupId="javax.servlet" artifactId="jstl"
> version="1.1.2" scope="runtime"/>
>    <dependency groupId="taglibs" artifactId="standard"
> version="1.1.2" scope="runtime"/>
>    <dependency groupId="opensymphony" artifactId="sitemesh"
> version="2.2.1" scope="runtime"/>
>    <dependency groupId="springmodules"
> artifactId="springmodules-validator" version="0.1" scope="runtime"/>
>    <dependency groupId="springframework" artifactId="spring"
> version="1.2.6"/>
>    <dependency groupId="springframework" artifactId="spring-mock"
> version="1.2.6" scope="test">
>      <exclusions>
>        <exclusion artifactId="spring-jdbc" groupId="springframework"/>
>        <exclusion artifactId="spring-web" groupId="springframework"/>
>      </exclusions>
>    </dependency>
> </dependencies>
>
> Of course, Ivy's syntax is even simpler, so maybe that'll provide some
> motivation. ;-)
>
>    <dependencies>
>        <dependency org="apache" name="commons-lang" rev="2.0" />
>        <dependency org="apache" name="commons-cli" rev="1.0" />
>    </dependencies>
>
> Matt
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to