回答:
log4j構成ファイルはありますか?ちょうどそれを使用してそれを参照してください
-Dlog4j.configuration={path to file}
{ファイルへのパス}の前に file:
編集: log4j2で作業している場合は、使用する必要があります
-Dlog4j.configurationFile={path to file}
{path to file}
file:
これを機能させるには、前に付加する必要があります。
解決策は、次のJVM引数を使用することです。
-Dlog4j.configuration={path to file}
ファイルがクラスパスにないWEB-INF/classes
場合(Tomcatの場合)、ディスク上のどこかにある場合はfile:
、次のように使用します。
-Dlog4j.configuration=file:C:\Users\me\log4j.xml
詳細と例はこちら:http : //logging.apache.org/log4j/1.2/manual.html
-Dlogback.configurationFile=C:\logback-test.xml
-Dlog4j.debug
これは(おそらくlog4j2で)次のように変更されたようです。
-Dlog4j.configurationFile=file:C:\Users\me\log4j.xml
参照:https : //logging.apache.org/log4j/2.x/manual/configuration.html
JAVA_PARAMS="-Dlog4j.configurationFile=classpath:log4j2-container.xml"
場合、Docker ImageがJAVA_PARAMSをenv varsでオーバーライドすることをサポートし、ファイルがJAR内にある場合に使用しました。
これはすでに回答済みですが、あなたが言ったので、これは正確にあなたが探しているものではないので、次の代替案を指摘したいと思います。
プロパティやxmlファイルの代わりに構成クラスを使用することもできます。
-Dlog4j.configuratorClass=com.foo.BarConfigurator
詳細については、http://logging.apache.org/log4j/1.2/manual.htmlを参照してください。
2015年以降、パーティーに遅れて、Log4J 1.xはEOLに達しました。
Log4J 2.x以降のJVMオプションは-Dlog4j.configurationFile=<filename>
PSは、<filename>
クラスパスからの相対ファイルとすることができずにfile:
他の回答で提案されているように。