问题
我必须将哪些变量设置/传递给JVM才能使log4j正常运行?正确地说,我的意思是不要抱怨并打印到控制台。我能看到一个典型的例子吗?
注意:我需要避免在应用程序中创建log4j.properties文件。
#1 热门回答(149 赞)
解决方案是使用以下JVM参数:
-Dlog4j.configuration={path to file}
如果文件不在类路径中(在Tomcat的情况下为inWEB-INF/classes
)但在磁盘上某处,请使用file:
,如
-Dlog4j.configuration=file:C:\Users\me\log4j.xml
更多信息和示例:http://logging.apache.org/log4j/1.2/manual.html
#2 热门回答(131 赞)
你有log4j配置文件吗?只需使用它即可
-Dlog4j.configuration={path to file}
其中应该以file:
作为前缀
#3 热门回答(19 赞)
我知道这已经回答了,但是因为你说,这不是你想要的,我想指出以下替代方案:
你还可以使用配置类而不是属性或xml文件。
-Dlog4j.configuratorClass=com.foo.BarConfigurator
有关详细信息,请参见http://logging.apache.org/log4j/1.2/manual.html。