我有一个需要作为Windows服务运行的Java应用程序。为此我创建了一个nssm安装文件并使用它运行java应用程序。在Windows 7中一切都很好但是在Windows 01中运行服务时我们遇到了错误。
Windows 1中引发的错误是:
- 附加到服务控制台XXX,AttachConsole()的错误 - 失败:访问被拒绝。
- 无法使用PID Xfoe服务XXX终止进程:访问被拒绝。
- 终止服务XXX时,无法打开带有PID X的进程的进程句柄:参数不正确。
我们正在使用nssm 2.24-101(预发布)。
安装脚本如下所示:
@echo off
set SERVICE=XXX
set SERVICEDESCRIPTION=XXXX
set INSTALLATIONPATH=C:\Services\XXX
set JAVAPARAMETERS=-jar XXX.jar
set NSSM=%INSTALLATIONPATH%\nssm\nssm.exe
set JAVAPATH=%INSTALLATIONPATH%\jre
call:registerservice
call:startservice
goto end
:registerservice
echo Registering service %SERVICE%
"%NSSM%" install %SERVICE% "%JAVAPATH%"
"%NSSM%" set %SERVICE% Application "%JAVAPATH%\bin\java.exe"
"%NSSM%" set %SERVICE% AppDirectory "%INSTALLATIONPATH%"
"%NSSM%" set %SERVICE% AppParameters %JAVAPARAMETERS%
"%NSSM%" set %SERVICE% DisplayName %SERVICE%
"%NSSM%" set %SERVICE% Description %SERVICEDESCRIPTION%
"%NSSM%" set %SERVICE% Start SERVICE_AUTO_START
goto:eof
:startservice
echo Starting %SERVICE%
"%NSSM%" start %SERVICE%
if ERRORLEVEL 1 sc start %SERVICE%
goto:eof
有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
没有为此找到任何解决方案。 我从我的应用程序中删除nssm并将其替换为Apache Commons Daemon。