我想运行一个Java应用程序作为服务。 不幸的是,我受限于我无法使用像Java Service Wrapper (这似乎是一个很好的工具)的东西。
有没有任何方式可以运行一个可执行的JAR作为一项服务,而不依赖于外部应用程序? 我目前已经安装了该服务,但无法启动。 这是我陷入困境,除了有关JSW的信息,我一直无法在Google上find任何东西。
Windows服务与Windows应用程序 – 最佳实践
错误1053服务没有响应启动或控制请求
从Windows服务启动应用程序
login前Windows服务访问networking
为远程安装Windows服务所需的最低权限
有一个Java Service Wrapper的LGPL克隆:http: //yajsw.sourceforge.net
顺便说一句,IANAL,但我怀疑JSW的人正在推广FUD,他们的软件可以用来在GPL许可下为商业应用程序提供服务,就像可以用gzip商业应用程序重新分配一样。 我可能完全错了,虽然:)
Apache Commons Daemon的另一个选项是procrun。
请参阅http://commons.apache.org/daemon/
应该以Windows服务运行的程序必须提供Windows服务管理器用于与该服务进行通信的某些功能。
只要没有JVM直接实现这个功能(而且我知道没有),你将需要某种包装。
我已经成功地使用srvany为一个基于Java的Windows服务(基本上它允许运行任何程序作为Windows服务,它与Java工作正常)
我还没有尝试过,但launch4j看起来可以满足您的需求。
还有一个选项winrun4j 。 许可证是eclipse的CPL。
你可以像这样使用NSSM :
nssm install MyService "%JAVA_HOME%binjava.exe" -jar "pathtothefile.jar"
我发现最简单的方法是RunAsService 。
一位同事推荐了一个名为SC的工具,但我没有尝试。
JSmooth可以做到这一点,它是蚂蚁脚本。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。