我有一个web应用程序,其中有超过100个由Maven拖动的jar文件,事情有点失去控制。管理与Maven 2的依赖关系
例如,我结束了3个版本的Spring核心类,这导致应用程序部署有时会失败(似乎从Web-INF/lib加载的jar的顺序并不总是与Weblogic相同):
spring-2.5.6.SEC01.jar
spring-2.5.6.A.jar
spring-core-2.0.8.jar
所以我试图清理这个烂摊子。我开始主要使用排除,但我不知道是否不应该依赖我自己的pom文件中的dependencyManagement元素。最佳做法是什么?
此外,传递依赖的版本通常没有指定。例如,在春季安全核心2.0.5.RELEASE POM文件有:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</dependency>
,如果我不指定任何事情弹簧核心的版本将被加载?最新的可用?它会随着时间而改变吗?
谢谢。
非常完整和有用的答案。我已经在eclipse中使用了一个视觉依赖:tree帮助我发现问题,但我更想知道如何解决这个问题。非常感谢。 – Damien 2010-09-02 21:08:25
@Damien不客气。 – 2010-09-02 21:11:11