Maven冲突 omitted for conflict with 解决
·
Maven冲突 omitted for conflict with 解决
实际开发过程中,我们可能经常遇见omitted for conflict with/omitted for duplicate。
我们在本地执行 mvn -X compile dependency:tree -Dverbose >a.log命令可以检查 jar包版本冲突,然后在a.log里查找是 否存在omitted for conflict with,如果有则表示jar包有版本冲突,
注意有版本冲突的也会显示编译成功(mvn dependency : tree -Deverbose | grep “omitted for conflict with”)。
根据提示的冲突,修改pom文件,即 将冲突的jar包管理起来,在节点中加入 冲突的依赖包,并确认版本 。所有依赖的版本号应使用dependencyManagement显示管理,若要引用依赖,需要在dependencyManagement下面写上依赖的 dependency ,不用在写 version 。例如:
<dependencies>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>${javax.validation.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>${hibernate.validator.version}</version>
</dependency>
</dependencies>
修改为
<dependencyManagement>
<dependencies>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>${javax.validation.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>${hibernate.validator.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
</dependency>
</dependencies>
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)