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>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章