Over-riding the log4j2 version in a Springboot starter(在SpringBoot启动程序中覆盖log4j2版本)
问题描述
我们正在尝试构建一个SpringBoot Starter,它将以编程方式创建log4j2配置,因此开发人员不必费心创建log4j2.xml文件。问题是,不同版本的log4j2编程API有所不同。我们已经使用log4j2版本2.5测试了我们的代码,它在独立环境中可以正常工作
现在,我们正在尝试将API包含在SpringBoot Starter中,以便所有SpringBoot应用程序都可以包含此Starter,而不必担心log4j配置。
我们面临的问题是,SpringBoot捆绑了自己的log4j版本,而我们无法控制用户将使用哪个版本的SpringBoot。
有没有办法强制SpringBoot启动程序加载版本2.5的log4j2,否则我们的测试SpringBoot应用程序会报告一些在log4j中找不到的方法
推荐答案
将log4j2依赖项添加到节很方便 在父项目中,如下所示<dependencyManagement> <dependencies> ... <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j</artifactId> <version>2.15.0</version> <type>pom</type> <scope>import</scope> </dependency> ... </dependencies> </dependencyManagement>
它将规定项目和模块中的所有log4j2版本。 相反,不需要添加一些log4j2依赖项 独立的。
勾选this question post
如果项目的log4j依赖项仅来自 Spring-Boot-starter-log4j2,它有一个明确的设置方式,参考 春季 博客<properties> <log4j2.version>2.17.0</log4j2.version> </properties>
这篇关于在SpringBoot启动程序中覆盖log4j2版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在SpringBoot启动程序中覆盖log4j2版本
![](/xwassets/images/pre.png)
![](/xwassets/images/next.png)
- 如何指定 CORS 的响应标头? 2022-01-01
- 将 Java Swing 桌面应用程序国际化的最佳实践是什么? 2022-01-01
- Eclipse 的最佳 XML 编辑器 2022-01-01
- 未找到/usr/local/lib 中的库 2022-01-01
- java.lang.IllegalStateException:Bean 名称“类别"的 BindingResult 和普通目标对象都不能用作请求属性 2022-01-01
- 在 Java 中,如何将 String 转换为 char 或将 char 转换 2022-01-01
- 获取数字的最后一位 2022-01-01
- 如何使 JFrame 背景和 JPanel 透明且仅显示图像 2022-01-01
- 转换 ldap 日期 2022-01-01
- GC_FOR_ALLOC 是否更“严重"?在调查内存使用情况时? 2022-01-01