我有一个需要部署为可执行 JAR 的 Java 守护程序(运行 24/7/365 的系统服务),但是我希望用户(在 Windows、Linux 和 Mac 上)能够通过以下方式启动/停止应用程序:
service myapp start
service myapp stop
(或任何与 Windows/Mac 服务等效的东西)。显然,这需要操作系统级别的东西来将myapp
“服务”映射到我的 Java 应用程序内部的特定方法调用(可能,LifecycleManager#start()
并且LifecycleManager#stop()
分别)。
我听说Apache Commons Daemon可以用于此目的,在仔细阅读他们的网站后,它看起来就是这样做的。但是,它看起来像是一个旧项目,并且确实没有任何文档可以完成我正在寻找的内容。
所以我问:可以commons-daemon
做我需要的,还是我需要别的东西或额外的东西?如何从可执行 JAR 中获取跨平台守护程序?提前致谢!