Linux守护进程用Java编写的位置

时间:2009-11-26 16:54:34

标签: java linux standards daemon

我正在编写一个Java守护程序。我正在编写一个脚本,它将具有标准的守护进程命令(启动,停止,重启,状态),并且我正在尝试确定安装守护进程时应该去的地方。

我目前的想法是:
PID文件: /var/run/myapp.pid
守护程序脚本: /etc/init.d/myapp
Java App(.jar): / usr / bin / myapp
日志: /var/log/myapp.err /var/log/myapp.log / var / log / myapp .info (你明白了)
配置: /etc/myapp.conf (或 / etc / myapp / configs-go-here 如果我将来有多个)

我还是Linux目录结构的新手,所以如果我做错了,请告诉我。最令我困惑的是我的Java应用程序是.jar文件(存档)而不是二进制文件。那么这是否意味着 / usr / bin / 不是它的“正确”的地方?

2 个答案:

答案 0 :(得分:2)

您可以将.jar文件放入/usr/lib/myapp/myapp.jar并使启动脚本执行java -j /usr/lib/myapp/myapp.jar

从那一侧看,jar实际上是/usr/bin/java二进制文件使用的库,所以这些位置对我来说很好。

答案 1 :(得分:2)

/usr/lib/myapp/myapp.jar建议在正确的轨道上,但/usr/lib用于特定于体系结构的文件 - 因为Java jar存档与平台无关,/usr/share/myapp/myapp.jar是更好的位置。