zoukankan      html  css  js  c++  java
  • 解决Maven项目中jar包依赖冲突问题

    版本冲突的解决方案

      [1]调节原则

          [1]路径最短者优先原则

          [2]路径相同时,先声明者优先原则

      [2]排除原则:用于排除某项依赖的依赖jar包

     1   <dependency>
     2     <groupId>javax.servlet</groupId>
     3     <artifactId>servlet-api</artifactId>
     4     <version>2.5</version>
     5     <exclusions>
     6       <exclusion>
     7         <groupId></groupId>
     8         <artifactId></artifactId>
     9         <!--这里不需要指定版本号,由于是排除特定依赖的某个依赖jar包,所以版本固定,不需指定 -->
    10       </exclusion>
    11     </exclusions>
    12     <scope>provided</scope>
    13   </dependency>

      [3]版本锁定原则:一般用在继承项目的父项目中

     1     <dependencyManagement>
     2       <dependencies>
     3         <dependency>
     4           <!--jar包坐标 -->
     5           <groupId></groupId>
     6           <artifactId></artifactId>
     7           <version></version>
     8         </dependency>
     9       </dependencies>
    10     </dependencyManagement>

      1、版本锁定之后,后面再使用到这个的 依赖的时候,就不要写版本号了!

      2、而且如果有多个相同的需要锁定的jar包的版本号一致的话,我们可以单独提取到properties标签中,

      3、在properties标签中,子标签自己定义,标签的值就是版本号,下面只需要在依赖的地方用${标签名}引用就可以了!

  • 相关阅读:
    常见网络攻击手段原理分析
    admins.py总结比较,转
    django的表与表之间的关系详细讲解
    django中的@login_required
    安装指定版本的第三方库
    在django中使用logging
    django的manytomany总结
    manyToManyField理解和用法
    django的多对一,一对一,多对多关系
    python 的os的总结
  • 原文地址:https://www.cnblogs.com/java-zmj/p/7989047.html
Copyright © 2011-2022 走看看