Maven 解决Jar包版本冲突
今天遇到一个小问题。在使用apache-commons-codec包进行编码/解码的时候,用到了Base64类的decodeBase64(String base64String)方法,这个方法在1.4版中才提供。而我们的工程中对codec存在两个间接的依赖,一个依赖1.2版本,一个依赖1.4版本,打包后,只有1.2版本,所以会报找不到该方法的错误。
这个问题其实很好解决。在依赖1.2版本的项目上,排除对codec的间接依赖即可。如:
1
2
3
4
5
6
7
8
9
10
11
12
13
<dependency>
<!-- 你直接依赖的Jar包-->
<groupId>AAA</groupId>
<artifactId>AAA</artifactId>
<exclusions>
<exclusion>
<!-- 你想排除的间接依赖的Jar包-->
<artifactId>xxx</artifactId>
<groupId>xxx</groupId>
</exclusion>
</exclusions>
<version>AAA</version>
</dependency>
所有代码已上传至Github:https://github.com/lihongzheshuai/yummy-code
GESP 学习专题站:GESP WIKI
"luogu-"系列题目可在洛谷题库进行在线评测。
"bcqm-"系列题目可在编程启蒙题库进行在线评测。
欢迎加入:Java、C++、Python技术交流QQ群(982860385),大佬免费带队,有问必答
欢迎加入:C++ GESP/CSP认证学习QQ频道,考试资源总结汇总
欢迎加入:C++ GESP/CSP学习交流QQ群(688906745),考试认证学员交流,互帮互助
本文由作者按照 CC BY-NC-SA 4.0 进行授权
