更改 log4j.properties 的位置
我想将所有配置文件放在应用程序目录的子文件夹中。Log4j 需要我的应用程序的根文件夹中的 log4j.properties 文件。有没有办法告诉log4j在哪里可以找到属性文件?/config
我想将所有配置文件放在应用程序目录的子文件夹中。Log4j 需要我的应用程序的根文件夹中的 log4j.properties 文件。有没有办法告诉log4j在哪里可以找到属性文件?/config
是,定义属性log4j.configuration
java -Dlog4j.configuration=file:/path/to/log4j.properties myApp
请注意,该属性值必须是 URL。
有关详细信息,请阅读Log4j手册中的“默认初始化过程”部分。
您可以使用 PropertyConfigurator
加载 log4j.properties,无论它位于磁盘中的哪个位置。
例:
Logger logger = Logger.getLogger(this.getClass());
String log4JPropertyFile = "C:/this/is/my/config/path/log4j.properties";
Properties p = new Properties();
try {
p.load(new FileInputStream(log4JPropertyFile));
PropertyConfigurator.configure(p);
logger.info("Wow! I'm configured!");
} catch (IOException e) {
//DAMN! I'm not....
}
如果您有 XML Log4J 配置,请改用 DOMConfigurator。