【发布时间】:2017-11-11 17:26:45
【问题描述】:
我的应用程序将有一个配置文件来配置其设置。
我希望这是应用程序使用的唯一配置文件,
应用程序将从 jar 文件运行,这意味着 log4j 将在应用程序运行后立即启动。
有什么方法可以延迟 log4j 的初始化,以便我可以使用配置文件中的信息来配置 log4j,然后启动 log4j?
【问题讨论】:
-
Log4j 不会立即启动。它在第一次使用时加载它的配置。如果它在您显式(重新)初始化它之前进行了初始化,那是因为您在那之前使用了它。要么不要,要么只接受配置是默认配置,直到你重新配置它。
-
请想一想你是否真的想用自己的语法把配置放到你自己的配置文件中。 Log4J 是众所周知的并且有文档记录 - 你确定你的文档会一样好吗?为什么不使用一个好的默认值并让用户参考 Log4J 文档?