`
cakin24
  • 浏览: 1336917 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

maven依赖冲突

    博客分类:
  • java
阅读更多
一、短路优先
1、基本原则
A->B->C->X(jar)
A->B->X(jar)
这里会选择第2条路径
2、实例
nage依赖于bge,shanji依赖于nage
bge:
  <modelVersion>4.0.0</modelVersion>
 
  <groupId>com.hongxing</groupId>
  <artifactId>hongxing-bge</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
 
  <name>hongxing-bge</name>
  <url>http://maven.apache.org</url>
 
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
 
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
       <groupId>commons-io</groupId>
       <artifactId>commons-io</artifactId>
       <version>2.4</version>
       </dependency>
  </dependencies>
</project>
nage:
  <modelVersion>4.0.0</modelVersion>
 
  <groupId>com.hongxing</groupId>
  <artifactId>hongxing-nage</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
 
  <name>hongxing-nage</name>
  <url>http://maven.apache.org</url>
 
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
 
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
       <groupId>commons-io</groupId>
       <artifactId>commons-io</artifactId>
       <version>2.0</version>
       </dependency>
     <dependency>
              <groupId>com.hongxing</groupId>
              <artifactId>hongxing-bge</artifactId>
              <version>0.0.1-SNAPSHOT</version>
    </dependency>
  </dependencies>
</project>
shanji:
  <modelVersion>4.0.0</modelVersion>
 
  <groupId>com.hongxing</groupId>
  <artifactId>hongxing-shanji</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
 
  <name>hongxing-shanji</name>
  <url>http://maven.apache.org</url>
 
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
 
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
       <groupId>com.hongxing</groupId>
       <artifactId>hongxing-nage</artifactId>
       <version>0.0.1-SNAPSHOT</version>
    </dependency>
  </dependencies>
</project>
此时shanji依赖于2.0版本
19.png
 
二 路径相同,先声明先优先
shanji依赖于bge,shanji依赖于nage,bge和nage没有关系
bge:
  <modelVersion>4.0.0</modelVersion>
 
  <groupId>com.hongxing</groupId>
  <artifactId>hongxing-bge</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
 
  <name>hongxing-bge</name>
  <url>http://maven.apache.org</url>
 
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
 
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
       <groupId>commons-io</groupId>
       <artifactId>commons-io</artifactId>
       <version>2.4</version>
       </dependency>
  </dependencies>
</project>
nage:
  <modelVersion>4.0.0</modelVersion>
 
  <groupId>com.hongxing</groupId>
  <artifactId>hongxing-nage</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
 
  <name>hongxing-nage</name>
  <url>http://maven.apache.org</url>
 
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
 
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
       <groupId>commons-io</groupId>
       <artifactId>commons-io</artifactId>
       <version>2.0</version>
       </dependency>
  </dependencies>
</project>
shanji:
  <modelVersion>4.0.0</modelVersion>
 
  <groupId>com.hongxing</groupId>
  <artifactId>hongxing-shanji</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
 
  <name>hongxing-shanji</name>
  <url>http://maven.apache.org</url>
 
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
 
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
              <groupId>com.hongxing</groupId>
              <artifactId>hongxing-bge</artifactId>
              <version>0.0.1-SNAPSHOT</version>
       </dependency>
    <dependency>
       <groupId>com.hongxing</groupId>
              <artifactId>hongxing-nage</artifactId>
              <version>0.0.1-SNAPSHOT</version>
        </dependency>
       
  </dependencies>
</project>
此时shanji依赖于2.4版本


 
  • 大小: 11.9 KB
1
1
分享到:
评论

相关推荐

    maven依赖冲突插件 MavenHelper-4.26.0

    maven依赖冲突插件:idea依赖很多的时候 可以使用插件帮我们快速查看冲突的依赖 并快速的解决依赖

    试试 IDEA 解决 Maven 依赖冲突的高能神器.docx

    试试 IDEA 解决 Maven 依赖冲突的高能神器

    详解maven依赖冲突以及解决方法

    主要介绍了maven依赖冲突以及解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    idea插件一键解决maven依赖冲突

    本插件参考58开源插件MavenManager,采用dependencyManagement方式,一键解决Java开发过程中使用maven作为依赖管理时的jar包依赖冲突问题,相比MavenHelper更加省时省力,jar包版本采用最新版本号原则

    cleanLastUpdated maven依赖冲突清理.zip

    导入maven仓库的时候总是提示jar文件导入不成功的错误,后经过分析,发现不成功的文件夹里面存在lastUpdate后缀名的文件。 用途:删除lastupdated脚本文件 注:路径需要自己用文本编辑器打开后进行修改

    MavenRunHelper maven解决依赖冲突插件

    MavenRunHelper插件的作用是帮助用户更轻松地在InteliJ IDEA中运行maven项目,它可以自动配置Maven运行环境,并且可以自动识别 maven项目的依赖关系,从而节省时间和精力。

    ​实现maven项目中多版本依赖兼容使用解决方案

    既能不升级jar包又能使用高版本依赖同时还不造成冲突的完美解决方案

    多种方法解决Maven Jar包冲突引入后报错问题.docx

    这样的问题如果不熟悉maven依赖机制的同学排查起来,估计挺头痛的。 而且maven依赖结构不好的项目,在引入新的Jar包时的风险也是巨大的。小则影响性能,大则引起生产发布和运行时异常。 其实以上问题的根源都来自于...

    maven冲突jar包清理脚本

    构建maven工程时pom.xml中引入依赖时有红色字体,setting处理了,也将jar包的版本号都试了一遍,还是没解决,后来请教大牛,原来是没连网,maven工程加载了一部分jar包,连网之后自动下载的jar包跟之前的冲突,用这...

    MavenRunHelper 各版本集合

    使用maven管理依赖包时会遇到依赖冲突的问题,解决起来非常麻烦。MavenRunHelper插件作为解决冲突的利器,能够高效率的展示出冲突列表,快速解决冲突问题。由于网络等问题,常常无法下载插件。现提供IntelliI IDEA ...

    mabel:Bazel的Maven依赖图生成器

    产品特点从给定的Maven依赖关系列表中解决所有依赖关系,并管理版本冲突-确保依赖关系图中每个工件只有一个版本可用。 为所有远程工件生成存储库规则。 生成所需的Java规则(具有传递依赖项)。 自动检测要为给定...

    MavenHelper.zip

    好用的idea编辑器Maven插件,用于快速查找依赖冲突,解决依赖冲突问题。

    MavenHelper

    好用的idea编辑器Maven插件,用于快速查找依赖冲突,解决依赖冲突问题。

    IDEA+Maven导入新包JDK版本冲突问题

    引入新的依赖包代码报-JDK版本冲突!解决

    maven 隐式依赖引起的包冲突解决办法

    主要介绍了maven 隐式依赖引起的包冲突解决办法的相关资料,需要的朋友可以参考下

    ofdrw .ofd 转 .pdf 所需要的jar包,不是maven项目的看过来.rar

    国标 ofd 文件 转 pdf 文件的依赖jar包,踩过很多坑,希望能帮到大家,如果是maven项目当我没说.如果缺少请留言,查缺补漏.

    尚硅谷Java视频教程_Maven视频

    通过jsp-api体验jar包之间的冲突 · 25.导入Maven工程 · 26.第三个Maven工程 · 27.依赖的传递性 · 28.依赖的排除 · 29.依赖的原则说明 · 30.依赖的原则测试 · 31.统一管理依赖的版本号 · 32.继承 ·...

    maven_部分_源码和思维导图

    01课_maven_初步02课_maven_初步_思路讲解和archetype的使用和eclipse的安装03课_maven_依赖_环境搭建和依赖的范围04课_maven_依赖_传递性依赖的冲突的问题

    SSM框架(基于maven,IDEA)

    自己搭建的SSM基本框架,基于maven,基于IDEA开发工具,里面的配置文件已经写好,jar包版本搭配较佳,不会出现冲突,请使用者更改数据库连接配置以及maven仓库地址。

Global site tag (gtag.js) - Google Analytics