users@jersey.java.net

Cutting down required spring dependent modules

From: Paul Sandoz <Paul.Sandoz_at_Sun.COM>
Date: Tue, 18 Nov 2008 12:41:15 +0100

Hi Martin,

Do you have any preferences/advice on how to cut down the spring
dependencies:

https://jersey.dev.java.net/issues/show_bug.cgi?id=123

We don't need to depend on Spring MVC.

In the pom we have:

                 <dependency>
                     <groupId>org.springframework</groupId>
                     <artifactId>spring-core</artifactId>
                     <version>${spring25-release-version}</version>
                     <scope>compile</scope>
                 </dependency>
                 <dependency>
                     <groupId>org.springframework</groupId>
                     <artifactId>spring</artifactId>
                     <version>${spring25-release-version}</version>
                     <scope>compile</scope>
                 </dependency>
                 <dependency>
                     <groupId>org.springframework</groupId>
                     <artifactId>spring-webmvc</artifactId>
                     <version>${spring25-release-version}</version>
                     <scope>compile</scope>
                 </dependency>

The dependency tree is:

[INFO] +- org.springframework:spring-core:jar:2.5.6:compile
[INFO] | \- commons-logging:commons-logging:jar:1.1.1:compile
[INFO] +- org.springframework:spring:jar:2.5.6:compile
[INFO] +- org.springframework:spring-webmvc:jar:2.5.6:compile
[INFO] | +- org.springframework:spring-beans:jar:2.5.6:compile
[INFO] | +- org.springframework:spring-context:jar:2.5.6:compile
[INFO] | | \- aopalliance:aopalliance:jar:1.0:compile
[INFO] | +- org.springframework:spring-context-support:jar:
2.5.6:compile
[INFO] | \- org.springframework:spring-web:jar:2.5.6:compile

So i propose to have in the pom the following instead:

                 <dependency>
                     <groupId>org.springframework</groupId>
                     <artifactId>spring-core</artifactId>
                     <version>${spring25-release-version}</version>
                     <scope>compile</scope>
                 </dependency>
                 <dependency>
                     <groupId>org.springframework</groupId>
                     <artifactId>spring</artifactId>
                     <version>${spring25-release-version}</version>
                     <scope>compile</scope>
                 </dependency>
                 <dependency>
                     <groupId>org.springframework</groupId>
                     <artifactId>spring-beans</artifactId>
                     <version>${spring25-release-version}</version>
                     <scope>compile</scope>
                 </dependency>
                 <dependency>
                     <groupId>org.springframework</groupId>
                     <artifactId>spring-context</artifactId>
                     <version>${spring25-release-version}</version>
                     <scope>compile</scope>
                 </dependency>
                 <dependency>
                     <groupId>org.springframework</groupId>
                     <artifactId>spring-web</artifactId>
                     <version>${spring25-release-version}</version>
                     <scope>compile</scope>
                 </dependency>

and in the spring annotations sample we do not need to explicitly
declare the spring dependencies.

Paul.