tomcat5.5.33に同梱されているバージョンのprocrunを使用してJavaバッチプロセスをインストールしました。
Commons Daemon Service Runner version 1.0.5.0/Win32 (Jan 5 2011)
Copyright (c) 2000-2011 The Apache Software Foundation.
インストールでは、(他のJVMオプションの中で)次のように指定します。
--JvmOptions="-Duser.dir=C:\LOCAL\serverapps"
log4j.propertiesの構成には次のものが含まれます。
log4j.appender.InfoLogFile.File=../logs/info.log
ただし、info.logファイルは次の場所に書き込まれています。
C:\WINDOWS\logs
私はuser.dir
多くの異なるポイントでの値をチェックしました、そしてそれは常にC:\LOCAL\serverapps
です。
しかし、log4jはあたかもuser.dir=C:\Windows\System32
(またはのその他のsubir C:\Windows
)のように動作しています。
log4jソース(1.2.16)からわかることから、場所から相対的なパスを作成すると主張するファイルクラスとファイルクラスFileAppender
のみを扱います。java.io.FileOutputStream
user.dir
私はこの問題を回避しましたが、興味があります。他の誰かがこのタイプの動作に遭遇したことがありますか?もしそうなら、実際に何が起こっているのですか?