0
OS - > Ubuntuの16.04 x64の次のJavaプログラムは、それがよう</home/user>
内のディレクトリにログファイルを作成し、コマンドラインから<user>
として実行されんが、ログファイルは生成されません
システム・パラメーターとして渡されたjava utilロギング・プロパティー・ファイルで構成されます。同プログラムは、以下にsystemdユニットとして実行されたときに
nohup java -Duser.home=<home/<user>> -Djava.util.logging.config.file=/home/<user>/<path_to_logging.properties> -cp <jarname>.jar <MainClass> >> /dev/null 2>>/dev/null &
しかし、プログラムは大丈夫実行します(それが代わりを/ dev/nullのファイルにパイプされたときに出力を見ることができる)が、ログファイルがあります生産されていない!!
[Unit]
Description=Daemon Desc
[Service]
WorkingDirectory=/home/<user>/<app>
ExecStart=/usr/share/java -Duser.home=/home/<user> -Djava.util.logging.config.file=/home/<user>/<path_to_logging.properties> -cp <jarname>.jar <MainClass>
User=<user>
[Install]
WantedBy=multi-user.target
ご協力いただければ幸いです。
ファイル権限の問題のような音です。 systemdから実行すると、ログのプロパティを読み込み、プロパティで指定されたログファイルに書き込む権限を持つユーザーとして実行されますか? – VGR
@VGR私は、ユーザ=として、logging.properties - > '-rw-r-r-- 'とlog dir-> 'drwxrwxr-x ' –