Procrun监视Java程序的应用程序

时间:2010-11-12 04:09:02

标签: java

有人尝试使用Procrun作为Windows服务运行Java控制台或GUI应用程序吗?

如果我通常使用Java -jar chat.jar -n room1如何以最佳方式使用Procrun?

1 个答案:

答案 0 :(得分:1)

我的java应用程序(入口点只是public static void main(String[] args))用作Windows服务,代码如下

@prunsrv //IS//SMTPMan --DisplayName="SMTPMan Proxy" \
--Install="C:\devel\_Executables\SMTPManService\prunsrv.exe" \
--Startup auto --Jvm auto --StartMode jvm --StopMode jvm \
--StartClass eu.javaman.smtp.Service  --StartMethod main \
--StopClass eu.javaman.smtp.Service --StopMethod main \
--StopParams stop --Classpath C:\devel\_Executables\SMTPManService\SMTPMan.jar \
--LogPath C:\devel\_Executables\SMTPManService \
--Description "Smtp Proxy service by xxx" \
--StdOutput C:\devel\_Executables\SMTPManService\SMTPMan.log \
--StdError C:\devel\_Executables\SMTPManService\SMTPMan.log \
--Type interactive

停止上面脚本安装的服务时会有一些警告,但它没有塞子所以我不介意:)

始终使用完全指定的路径,同时检查http://commons.apache.org/daemon/procrun.html以满足您的特定需求;但是不要使用'=':)

如果param值包含空格将其包装在引号中 如果服务正确安装,你可以轻松使用prunmgr.exe来启动/停止(也修改所有提到的参数值),这个界面有两个或三个以上的选项卡,而不是通过服务窗口控件可访问的选项卡

对于路径中的空格,在另一个线程中找到了解决方法:

@rem #FOR %%F IN ("C:\Program Files\prunsrv.exe") DO SET prunsrv=%%~sF <br>
@rem #prunsrv … --Install=%prunsrv%