That would certainly help people understand why dependencies are there and how they are related. Although, shouldn't the dependencies be in the poms already? So if XMLBeans needed Stax they would have already declared that and it could be derived transitively?

On Jan 11, 2007, at 2:22 PM, Jason Dillon wrote:

Anyone have any oppinon on creating meta-modules to group dependencies that are commonly used together?

For example, in most places where xmlbeans is a dep, so is stax, as in:

    <dependency>
        <groupId>xmlbeans</groupId>
        <artifactId>xbean</artifactId>
    </dependency>

    <dependency>
        <groupId>stax</groupId>
        <artifactId>stax-api</artifactId>
    </dependency>

We could create a meta-module, which simply defines these as dependencies, then use the meta-module as a dependency to simplify some of the commonly used dependencies.

This could also be used to allow better support for picking up versions of dependencies when we build the CTS server for TCK testing. For example, right now we have to include versions for openejb and yoko in the CTS build:

   <dependency>
        <groupId>org.apache.openejb</groupId>
        <artifactId>openejb-core</artifactId>
        <version>2.3-incubating-SNAPSHOT</version>
    </dependency>

    <dependency>
        <groupId>org.apache.openejb</groupId>
        <artifactId>openejb-corba</artifactId>
        <version>2.3-incubating-SNAPSHOT</version>
    </dependency>

    <dependency>
        <groupId>org.apache.openejb</groupId>
        <artifactId>openejb-yoko</artifactId>
        <version>2.3-incubating-SNAPSHOT</version>
    </dependency>

    <dependency>
        <groupId>org.apache.yoko</groupId>
        <artifactId>yoko-core</artifactId>
        <version>1.0-incubating-M2-SNAPSHOT</version>
    </dependency>

    <dependency>
        <groupId>org.apache.yoko</groupId>
        <artifactId>yoko-spec-corba</artifactId>
        <version>1.0-incubating-M2-SNAPSHOT</version>
    </dependency>

    <dependency>
        <groupId>org.apache.yoko</groupId>
        <artifactId>yoko-rmi-spec</artifactId>
        <version>1.0-incubating-M2-SNAPSHOT</version>
    </dependency>

    <dependency>
        <groupId>org.apache.yoko</groupId>
        <artifactId>yoko-rmi-impl</artifactId>
        <version>1.0-incubating-M2-SNAPSHOT</version>
    </dependency>

IMO it would be better if there was some module in the server build which had these dependencies so that CTS always gets built with the correct version.

 * * *

Anyways, just a thought... meta-modules might help reduce some dependency configuration by centralizing dependency groupings.

Any thoughts?

--jason


Matt Hogstrom
[EMAIL PROTECTED]


Reply via email to