解决log4j漏洞(maven版本切换、版本冲突)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录的

  • 前言
  • 具体步骤
  • 总结

上周四(20211209),发生了一件大事,log4g从2.0开始到2.14.1(2.14.1漏洞修复)之前。存在重大漏洞。这里教大家怎么切换版本,修复漏洞。本人水平有限,如有误导,欢迎斧正,一起学习,共同进步!


前言

思路:重新在项目中导入新的log4j的依赖,然后解决冲突,将有问题的版本替换为正常的版本

具体步骤

1、找到项目,并打开maven的依赖图
解决log4j漏洞(maven版本切换、版本冲突)_第1张图片
2、进入到此界面以后,ctrl+f 搜索 log4j
解决log4j漏洞(maven版本切换、版本冲突)_第2张图片
3、搜到以后,光标放上去,此时是 2.13.3 这个版本是有问题的
解决log4j漏洞(maven版本切换、版本冲突)_第3张图片
4、添加新的修复漏洞后的依赖

<dependency>
	<groupId>org.apache.logging.log4j</groupId>
	<artifactId>log4j-to-slf4j</artifactId>
	<version>2.14.1</version>
</dependency>

5、打开Dependency Analyzer 页面(此界面需要idea中安装 maven helper 插件)

解决log4j漏洞(maven版本切换、版本冲突)_第4张图片
6、找到冲突的依赖,右键,exclude
解决log4j漏洞(maven版本切换、版本冲突)_第5张图片
7、reimport 重新导入maven依赖
8、重新打开 Dependency Analyzar 并且要 Refresh UI ,刷新后,会发现log4j的冲突没有了
解决log4j漏洞(maven版本切换、版本冲突)_第6张图片
9、此时重新找到项目,右键 show Dependencies… 完成版本的切换,(从2.13.3 切换至 2.14.1)
解决log4j漏洞(maven版本切换、版本冲突)_第7张图片

总结

其实最开始我试图根据maven依赖网去一级一级的搜索替换,不过替换的过程中发现一级一级的依赖太多,太麻烦了,索性不如直接替换,也省心省力了。

你可能感兴趣的:(Maven,maven,java,安全)