我想将所有配置文件放在/config
我的应用程序目录的子文件夹中.Log4j期待我的应用程序的根文件夹中的log4j.properties文件.有没有办法告诉log4j在哪里查找属性文件?
Ale*_*yak 68
是的,定义log4j.configuration
属性
java -Dlog4j.configuration=file:/path/to/log4j.properties myApp
Run Code Online (Sandbox Code Playgroud)
请注意,该属性值必须是URL.
有关Log4j手册中的更多阅读部分"默认初始化过程" .
Buh*_*ndi 32
您可以使用它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....
}
Run Code Online (Sandbox Code Playgroud)
如果您有XML Log4J配置,请改用DOMConfigurator.