Matt Raible wrote:
On 11/19/05, Carlos Sanchez <[EMAIL PROTECTED]> wrote:
Hi all,

I'll try to put a bit of light at this.

- I've put the spring jars in the repo so you guys can use them in m1 and m2
- At first there were no poms because it takes me some time to have them ready
- I'm working on the poms, I've put the ones i was using first, but
there was no optional dependencies though, so now I'm pretty close to
have them ready with the optional stuff.

About spring full jar, I don't suggest you to use it depends in a lot
of stuff, in fact I don't know if I'll make a pom for it.

IMO, there should be a POM for Spring - mainly because I believe that
there's a lot of folks just using spring.jar rather than the
individual JARs.
I completely agree with this, why would I want to include 5 dependencies if all I need to include is one?
To make
transitive dependencies work correctly you should add only what you
need.

Sure, but shouldn't ease of use be a concern as well?
 I believe that if you depend on

spring-support
spring-orm
spring-hibernate
spring-remoting
spring-core

you get the same things as in spring jar.

So now I have to have 25 lines of XML in my pom.xml - instead of 5 for
spring.jar?  Ugh.
I couldn't agree more. I think all these emails about transitive dependency issues proves there really should be an option to turn them off for a given dependency. Transitive dependencies are a great idea, and work in a lot of cases, but a lot of times you just want to turn them off and specify the dependencies you need.
Matt

About the groupId you should use org.springframework. Just
springframework will work but it's just a relocation to
org.springframework.

If you wanna know the status of this you can subscribe to the jira
issues MEV-108 and MEV-133.

Sorry for the inconvenience.

On 11/19/05, Matt Raible <[EMAIL PROTECTED]> wrote:
Stephen,

I was using groupId=springframework, but switched to
org.springframework when I tried to upgrade 1.2.6 today.  I was hoping
to revert back to springframework and have all my problems solved -
but no dice.

The easiest thing for me to do seems to be to upload my own POM and
JAR to my own repository.  This is likely what I'll do for many
dependencies since the ibiblio repository seems to change dependencies
often - and just when you think you've got a library cleaned up -
something like this happens.

Matt

On 11/19/05, Stephen Duncan <[EMAIL PROTECTED]> wrote:
Matt,

I've been using a groupId of springframework, instead of
org.springframework.  Also I've started depending on the individual
spring modules, instead of the full jar.  Same issue though: a bunch
of exclusions.  Usually a new version (such as Spring 1.2.6 right now)
has no dependencies at first, but then a week or so later they add all
the dependencies in.

Here's a couple of the Maven Evangelism tickets open about the issue:

http://jira.codehaus.org/browse/MEV-108
http://jira.codehaus.org/browse/MEV-133

Here's the current dependencies with exclusions I have (in a global
parent POM in dependencyManagement).  Note that parts are particular
to me, because I'm using Hibernate 2 and not 3, for instance.  Still,
it's a start:

                        <dependency>
                                <groupId>springframework</groupId>
                                <artifactId>spring-aop</artifactId>
                                <version>1.2.5</version>
                                <scope>compile</scope>
                                <exclusions>
                                        <exclusion>
                                                
<groupId>commons-attributes</groupId>
                                                
<artifactId>commons-attributes-compiler</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                
<groupId>commons-attributes</groupId>
                                                
<artifactId>commons-attributes-api</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>aopalliance</groupId>
                                                
<artifactId>aopalliance</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>commons-pool</groupId>
                                                
<artifactId>commons-pool</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>oro</groupId>
                                                <artifactId>oro</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>com.jamonapi</groupId>
                                                <artifactId>jamon</artifactId>
                                        </exclusion>
                                </exclusions>
                        </dependency>

                        <dependency>
                                <groupId>springframework</groupId>
                                <artifactId>spring-beans</artifactId>
                                <version>1.2.5</version>
                                <scope>compile</scope>
                                <exclusions>
                                        <exclusion>
                                                <groupId>cglib</groupId>
                                                <artifactId>cglib</artifactId>
                                        </exclusion>
                                </exclusions>
                        </dependency>

                        <dependency>
                                <groupId>springframework</groupId>
                                <artifactId>spring-context</artifactId>
                                <version>1.2.5</version>
                                <scope>compile</scope>
                                <exclusions>
                                        <exclusion>
                                                <groupId>velocity</groupId>
                                                
<artifactId>velocity</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>freemarker</groupId>
                                                
<artifactId>freemarker</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>jasperreports</groupId>
                                                
<artifactId>jasperreports</artifactId>
                                        </exclusion>
                                </exclusions>
                        </dependency>

                        <dependency>
                                <groupId>springframework</groupId>
                                <artifactId>spring-core</artifactId>
                                <version>1.2.5</version>
                                <scope>compile</scope>
                        </dependency>

                        <dependency>
                                <groupId>springframework</groupId>
                                <artifactId>spring-web</artifactId>
                                <version>1.2.5</version>
                                <scope>compile</scope>
                                <exclusions>
                                        <exclusion>
                                                <groupId>javax.servlet</groupId>
                                                <artifactId>jsp-api</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>javax.servlet</groupId>
                                                <artifactId>jstl</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>struts</groupId>
                                                <artifactId>struts</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>com.servlets</groupId>
                                                <artifactId>cos</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>taglibs</groupId>
                                                
<artifactId>standard</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>javax.faces</groupId>
                                                <artifactId>jsf-api</artifactId>
                                        </exclusion>
                                </exclusions>
                        </dependency>

                        <dependency>
                                <groupId>springframework</groupId>
                                <artifactId>spring-dao</artifactId>
                                <version>1.2.5</version>
                                <scope>compile</scope>
                                <exclusions>
                                        <exclusion>
                                                
<groupId>javax.transaction</groupId>
                                                <artifactId>jta</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>jotm</groupId>
                                                <artifactId>jotm</artifactId>
                                        </exclusion>
                                </exclusions>
                        </dependency>

                        <dependency>
                                <groupId>springframework</groupId>
                                <artifactId>spring-jdbc</artifactId>
                                <version>1.2.5</version>
                                <scope>compile</scope>
                                <exclusions>
                                        <exclusion>
                                                <groupId>commons-dbcp</groupId>
                                                
<artifactId>commons-dbcp</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>c3p0</groupId>
                                                <artifactId>c3p0</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>com.experlog</groupId>
                                                <artifactId>xapool</artifactId>
                                        </exclusion>
                                </exclusions>
                        </dependency>

                        <dependency>
                                <groupId>springframework</groupId>
                                <artifactId>spring-hibernate</artifactId>
                                <version>1.2.5</version>
                                <scope>compile</scope>
                                <exclusions>
                                        <exclusion>
                                                <groupId>org.hibernate</groupId>
                                                
<artifactId>hibernate-annotations</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>org.hibernate</groupId>
                                                
<artifactId>hibernate</artifactId>
                                        </exclusion>
                                </exclusions>
                        </dependency>

                        <dependency>
                                <groupId>springframework</groupId>
                                <artifactId>spring-orm</artifactId>
                                <version>1.2.5</version>
                                <scope>compile</scope>
                                <exclusions>
                                        <exclusion>
                                                
<groupId>springframework</groupId>
                                                
<artifactId>spring-webmvc</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>javax.jdo</groupId>
                                                <artifactId>jdo</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>com.oracle</groupId>
                                                
<artifactId>toplink-api</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>com.ibatis</groupId>
                                                
<artifactId>ibatis-sqlmap</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>com.ibatis</groupId>
                                                
<artifactId>ibatis2-sqlmap</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>ojb</groupId>
                                                <artifactId>db-ojb</artifactId>
                                        </exclusion>
                                </exclusions>
                        </dependency>

                        <dependency>
                                <groupId>springframework</groupId>
                                <artifactId>spring-webmvc</artifactId>
                                <version>1.2.5</version>
                                <scope>compile</scope>
                                <exclusions>
                                        <exclusion>
                                                <groupId>velocity</groupId>
                                                
<artifactId>velocity</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                
<groupId>velocity-tools</groupId>
                                                
<artifactId>velocity-tools-generic</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                
<groupId>velocity-tools</groupId>
                                                
<artifactId>velocity-tools-view</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>poi</groupId>
                                                <artifactId>poi</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                <groupId>itext</groupId>
                                                <artifactId>itext</artifactId>
                                        </exclusion>
                                        <exclusion>
                                                
<groupId>net.sourceforge.jexcelapi</groupId>
                                                <artifactId>jxl</artifactId>
                                        </exclusion>
                                </exclusions>
                        </dependency>


-Stephen

On 11/19/05, Matt Raible <[EMAIL PROTECTED]> wrote:
I've been using Spring 1.2.5 in my project for the past couple of
weeks.  The transitive dependencies feature of M2 has seemed to work
great b/c there were no dependencies for Spring.

         <dependency>
            <artifactId>spring</artifactId>
            <groupId>org.springframework</groupId>
            <version>1.2.5</version>
        </dependency>

However, as of today (possibly earlier, since I just deleted my local
repo this morning), I now have to exclude a whole bunch of
dependencies.  Below is a list of ones I had to exclude just for M2 to
download everything and run "mvn test". To really clean this up and
prevent a bunch of unused JARs in my project, it's likely I'd have to
greatly expand this list to include quartz, freemarker, velocity, etc.

(more comments after the xml below)

         <dependency>
            <artifactId>spring</artifactId>
            <groupId>org.springframework</groupId>
            <version>1.2.5</version>
            <exclusions>
                <exclusion>
                    <artifactId>activation</artifactId>
                    <groupId>javax.activation</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>mail</artifactId>
                    <groupId>javax.mail</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>toplink-api</artifactId>
                    <groupId>com.oracle</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>ejb</artifactId>
                    <groupId>javax.persistence</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>ejb</artifactId>
                    <groupId>javax.ejb</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jta</artifactId>
                    <groupId>javax.transaction</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>connector</artifactId>
                    <groupId>javax.resource</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jaxrpc</artifactId>
                    <groupId>javax.xml</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jms</artifactId>
                    <groupId>javax.jms</groupId>
                </exclusion>
            </exclusions>
        </dependency>

Since spring.jar only depends on commons-logging, shouldn't the rest
of these be marked optional?  How did this change in the last couple
of days - did someone upload a new POM for Spring to ibiblio?

Thanks,

Matt

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


--
Stephen Duncan Jr
www.stephenduncanjr.com

---------------------------------------------------------------------
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]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to