maven如何解决依赖冲突?示例三种bug的解决

Bug1:本地pull了总分支后无法加载用到的jar包

因为本地之前用的依赖版本,和总分支用了同样版本的依赖,但是两个相同版本的jar包里有一个不同的函数。这样一来本地检测到相同版本。
解决方案:
1.先在Setting里找到Maven的本地仓库路径,进入roepository在这里插入图片描述
2.在repository下的common文件夹中找到以项目名命名的文件夹然后删除,之后再IDEA里执行更新命令

Bug2:部署编译失败

通过如下命令行将远端仓库的jar包同步到本地

mvn clean install -Dmaven.repo.local=/tmp/m2 -Dmaven.test.skip=true

结果发现了禁止的直接依赖
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200701110329917.png解决方案:
在IDEA里终端找到项目所在目录,输入以下命令

mvn dependency:tree -Dverbose -Dincludes=asm:asm  

将禁止直接引用的依赖找到,去父级用解绑,实例如下

<dependency>      
     <groupId>org.apache.hbase</groupId>  
     <artifactId>hbase</artifactId>  
     <version>xxx</version>   
     <exclusions>    
           <exclusion>        
                <groupId>commons-logging</groupId>            
                <artifactId>commons-logging</artifactId>    
           </exclusion>    
     </exclusions>    
</dependency> 
      注:-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值