通过JVM参数configurationlog4j?
我必须设置/传递什么variables作为JVM的参数才能使log4j正常运行? 而正确的意思是不抱怨,并打印到控制台。 我能看到一个典型的例子吗?
注意:我需要避免在应用程序中创build一个log4j.properties文件。
你有一个log4jconfiguration文件? 只需使用参考
-Dlog4j.configuration={path to file}
其中{文件path}应该以file:
解决scheme是使用下面的JVM参数:
-Dlog4j.configuration={path to file}
如果文件不在类path中(在Tomcat的情况下,在WEB-INF/classes
中),但是在你的磁盘上的某处,使用file:
-Dlog4j.configuration=file:C:\Users\me\log4j.xml
更多信息和例子在这里: http : //logging.apache.org/log4j/1.2/manual.html
我知道这已经回答了,但是因为你说了,这不是你正在寻找的东西,所以我想指出下面的select:
您也可以使用configuration类而不是属性或xml文件。
-Dlog4j.configuratorClass=com.foo.BarConfigurator
有关详细信息,请参阅http://logging.apache.org/log4j/1.2/manual.html 。
这似乎已经改变(可能与log4j2):
-Dlog4j.configurationFile=file:C:\Users\me\log4j.xml
请参阅: https : //logging.apache.org/log4j/2.x/manual/configuration.html
一般来说,只要你的log4j.properties文件在类path上,Log4j应该在JVM启动时自动select它。
自从2015年以来,Log4J 1.x已经达到了EOL 。
Log4J 2.x以上的JVM选项应该是-Dlog4j.configurationFile=<filename>
PS <filename>
可能是一个文件相对于没有 file:
的类pathfile:
如其他答案中的build议。