簡體   English   中英

procrun“找不到服務'prunsrv'的注冊表項”

[英]procrun “cannot find registry key for service 'prunsrv'”

我正在嘗試使用procrun在Windows上將應用程序(位於胖子中)作為服務運行。 具體來說,我的開發系統是Server2012。我已經創建了一個批處理文件,就像我看到的所有示例一樣,但是當我嘗試運行它(甚至只是單獨運行prunsrv.exe)時,出現以下錯誤

c:\Users\kmilner\Desktop>c:\seven10\procrun\amd64\prunsrv
[2015-12-22 14:42:47] [warn]  [ 3132] The system cannot find the Registry key for service 'prunsrv'
[2015-12-22 14:42:47] [error] [ 3132] Load configuration failed
[2015-12-22 14:42:47] [error] [ 3132] The system cannot find the file specified.
[2015-12-22 14:42:47] [error] [ 3132] Commons Daemon procrun failed with exit value: 2 (Failed to load configuration)
[2015-12-22 14:42:47] [error] [ 3132] The system cannot find the file specified.

我不知道為什么它將服務名稱分配給可執行文件的名稱。 這是我編寫的批處理文件,但是同樣,當我不帶任何參數運行prunsrv.exe時,也會得到相同的響應。

@cls
@if not "%1" == "" (
     @set PROCRUN_CMD=%1
) else (
     @set PROCRUN_CMD=TS
)

set APP_HOME=c:\myapp
set AGENT_HOME=%APP_HOME%\agent

set PROCRUN_EXEC=%APP_HOME%\procrun\amd64\prunsrv.exe

set AGENT_SERVICE_NAME=My-Agent

set SERVICE_LOG_PATH=%AGENT_HOME%\logs\windows

%PROCRUN_EXEC% %PROCRUN_CMD% %AGENT_SERVICE_NAME% ^
    --Install="%PROCRUN_EXEC%" ^
    --Description="My Service" ^
    --Classpath="%AGENT_HOME%\MyApp.jar" ^
    --StartClass=org.MyOrg.MyApp ^
    ++startParams="-s;%AGENT_HOME%\conf\settings.json" ^
    --StartMode="java" ^
    --Startup="auto" ^
    --StopClass=java.lang.System ^
    --StopMethod=exit ^
    --StopMode=jvm ^
    --logPath="%SERVICE_LOG_PATH%" ^
    --StdOutput="%SERVICE_LOG_PATH%\service-stdout.txt" ^
    --StdError="%SERVICE_LOG_PATH%\service-stderr.txt" ^
    --LogLevel="Debug"

@echo.

那么,我在這里缺少什么導致了這個問題? 我找不到其他答案。

這樣做的原因是因為我在procrun命令周圍沒有// s。 :(而且,正如我的出色老板所指出的那樣,在startParams和logPath上的情況是錯誤的。我很糟糕。但是在這種完全相同的情況下,它可能會幫助其他人。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM