2
回答
避免maven依赖的版本冲突总结
终于搞明白,存储TCO原来是这样算的>>>   

1.在子模块快中把重复的依赖上提到父模块。

2.一个pom中的版本号如果是一样的要单独提出来,共享使用。

3.如果是兄弟依赖,这样的情况要通过${project.version},${project.groupId}引用父类的的相关信息。

4.间接依赖要进行显示声明。

欢迎补充

举报
共有2个评论 最后回答: 6年前

引用来自“kevin.lee”的答案

必要的时候  exclusions 显示排除掉
对,
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.5.ga</version>
<exclusions>
<exclusion>
<groupId>javax.transaction</groupId>
<artifactId>jta</artifactId>
</exclusion>
</exclusions>
</dependency>
定义了一个对HIbernate版本3.2.5ga的依赖,但排除了Hibernate的一个依赖。这么做是因为javax.transaction:javax依赖在公共Maven仓库中不可用。此依赖正好是Sun依赖中的一个,不能免费在中央Maven仓库中提供。为了避免烦人的信息告诉我们去下载非免费的依赖,简单的从Hibernate排除这个依赖然后添加一个geronimo-jta_1.1_spec依赖解决这个问题。
顶部