首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >log4j2中的PropertyConfigurator

log4j2中的PropertyConfigurator
EN

Stack Overflow用户
提问于 2015-08-17 14:09:38
回答 5查看 14.9K关注 0票数 15

我正在将log4j 1.2.8迁移到log4j 2.3。一切都很好,除此之外,我没有找到任何PropertyConfigurator的替代品。

有没有另外一个类来处理PropertyConfigurator之前做过的事情?

EN

回答 5

Stack Overflow用户

发布于 2017-09-13 21:36:45

也许这个能帮到你?

如何使用特定的配置文件在代码中重新配置log4j2?请参见下面的示例。请注意,此LoggerContext类不是public API的一部分,因此您的代码可能会因任何次要版本而中断。

代码语言:javascript
复制
// import org.apache.logging.log4j.core.LoggerContext;

LoggerContext context = (org.apache.logging.log4j.core.LoggerContext) LogManager.getContext(false);
File file = new File("path/to/a/different/log4j2.xml");


// this will force a reconfiguration
context.setConfigLocation(file.toURI());**
票数 6
EN

Stack Overflow用户

发布于 2015-08-22 14:49:48

Log4j 2目前支持使用XML、JSON或YAML进行配置。虽然在不久的将来也可能支持属性文件,但其语法肯定会与Log4j 1不同。

票数 2
EN

Stack Overflow用户

发布于 2021-10-11 15:27:26

我的解决方案简单地按照Log4J站点https://logging.apache.org/log4j/2.x/manual/migration.html中的说明进行操作,即我将

代码语言:javascript
复制
<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>

使用

代码语言:javascript
复制
 <dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-1.2-api</artifactId>
    <version>2.14.1</version>
 </dependency>

没有编译错误,即使使用类org.apache.log4j.PropertyConfigurator也是如此。

这比尝试迁移到

代码语言:javascript
复制
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.14.1</version>
</dependency>

正如@Christian所指出的,它无法替代类PropertyConfigurator。诚然,如果不迁移,我将无法从Log4j 2的新功能中获益。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32043770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档