Java工程maven中排包exclude的操作

本文讲述了在开发过程中遇到jar包依赖冲突的问题,通过执行mvncleaninstall分析错误,针对新老包冲突和新jar包内部子包冲突提供了排除策略,包括使用exclusions标签来指定排除特定依赖。
摘要由CSDN通过智能技术生成

一、背景

在开发项目时依赖了新的jar包,结果工程启动时报错了,此时应该是包依赖冲突的问题。

二、确定冲突的依赖包

执行mvn clean install,通过报错信息来确定冲突的jar包信息

三、排除冲突包的方案

有两种冲突的情况:

1)新jar包和工程中老jar包的冲突

2)新jar包内部子jar包之间存在冲突

1、新老jar包冲突排除

whale-dao是加入前已在使用的jar包,ali-langengine-xx是后加入的jar包,现在需要排除ali-langengine-xx中冲突的jar包。

 <dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>ali-langengine-vectorstore</artifactId>
    <version>1.0.10-SNAPSHOT</version>
       <exclusions>
          <exclusion>
             <groupId>com.google.protobuf</groupId>
             <artifactId>protobuf-java</artifactId>
          </exclusion>
       </exclusions>
 </dependency>

2、新jar包内部子jar包之间冲突排除

此时的解法是:ali-language-core中排除掉冲突包,然后在外部再新加一个依赖包。

<dependency>
   <groupId>commons-collections</groupId>
   <artifactId>commons-collections</artifactId>
   <version>3.2.2</version>
</dependency>

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>ali-langengine-core</artifactId>
    <version>1.0.10-RELEASE</version>
    <exclusions>
        <exclusion>
           <groupId>commons-collections</groupId>
           <artifactId>commons-collections</artifactId>
        </exclusion>
    </exclusions>
</dependency>

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值