• maven冲突问题


    通过配置文件解决问题:

    http://stamen.iteye.com/blog/2030552

    1.用命令dependency:tree得到依赖关系

    (或者加上Dincludes或者Dexcludes说出你喜欢或讨厌限制 例:mvn dependency:tree -Dverbose -Dincludes=asm:asm  )

    2.找到不想要的jar的位置

    3.最后在pom上修改

    将不想要的传递依赖剪除掉 

       承上,假设我们不希望asm:asm:jar:1.5.3出现,根据分析,我们知道它是经由org.unitils:unitils-dbmaintainer:jar:3.3引入的,那么在pom.xml中找到这个依赖,做其它的调整: 

    <dependency>  
        <groupId>org.unitils</groupId>  
        <artifactId>unitils-dbmaintainer</artifactId>  
        <version>${unitils.version}</version>  
        <exclusions>  
            <exclusion>  
                <artifactId>dbunit</artifactId>  
                <groupId>org.dbunit</groupId>  
            </exclusion>  
            <!-- 这个就是我们要加的片断 -->  
            <exclusion>  
                <artifactId>asm</artifactId>  
                <groupId>asm</groupId>  
            </exclusion>  
        </exclusions>  
    </dependency>
    由于引入jar顺序问题的解决办法:

    http://mrlee23.iteye.com/blog/1926787

    如果你pom.xml里面你把spring-asm-3.1.4和spring-core-3.2.4同时引进去的话(注意:一定要注意顺序,是spring-asm-3.1.4在前,spring-core-3.2.4在后,这会引起包冲突)

    解决办法:

    1、在pom.xml中去掉spring-asm-3.1.4的引用,因为spring-core-3.2.4已经把asm这个代码重新打包进去了

    spring-core-3.2.4 包

    2.如果必须要用spring-asm-3.1.4的话,就在pom文件中,把spring-core-3.2.4的引用放在spring-asm-3.1.4之前(利用类加载顺序,但不建议这么做,会带来一些问题)

    <dependency>  
        <groupId>org.springframework</groupId>  
        <artifactId>spring-core</artifactId>  
        <version>3.2.4.RELEASE</version>  
    </dependency>  
    <dependency>  
        <groupId>org.springframework</groupId>  
        <artifactId>spring-asm</artifactId>  
        <version>3.1.4.RELEASE</version>  
    </dependency>  
    
  • 相关阅读:
    SpringMVC获取参数的几种方式
    java实现邮箱发送邮件功能
    java实现屏幕截屏功能
    java生成验证码结合springMVC
    lodash实践之依据规则处理对象
    js深入之实现call、apply和bind
    js内存深入学习(二)
    js内存深入学习(一)
    web缓存策略之HTTP缓存大全
    Service Worker MDN英文笔记
  • 原文地址:https://www.cnblogs.com/SnowingYXY/p/7086065.html
Copyright © 2020-2023  润新知