J'ai converti un fichier java exécutable en un exécutable Windows en utilisant Launch4j. Je l'ai installé et jre dans une boîte de Windows 8, dans le répertoire c: \ program files (x86) \ mycomany, et j'ai exécuté ce qui suit en tant qu'administrateur dans un fichier bat (afin d'utiliser prunsvc pour exécuter l'application en tant que service):prunsvc ne peut pas exécuter java exécutable en tant que service sous Windows 8.1
rem determine the full path to this bat file
set thispath=%~dp0
set SERVICE_NAME=MyService
set PR_INSTALL=%thispath%prunsrv.exe
REM set service stdout and stderr
set PR_LOGPATH=%thispath%
set PR_STDOUTPUT=%thispath%stdout.txt
set PR_STDERROR=%thispath%stderr.txt
set PR_LOGLEVEL=Error
REM path to java
set PR_JVM="%thispath%jre1.8.0_45\bin\client\jvm.dll"
set PR_CLASSPATH="%thispath%jre1.8.0_45\bin\MyService.exe"
REM Startup configuration
set PR_STARTUP=auto
set PR_STARTMODE=jvm
set PR_STARTCLASS=com.mycompany.mainclass
set PR_STARTMETHOD=start
REM Shutdown configuration
set PR_STOPMODE=jvm
set PR_STOPCLASS=com.mycompany.mainclass
set PR_STOPMETHOD=stop
REM JVM configuration
set PR_JVMMS=256
set PR_JVMMX=1024
set PR_JVMSS=4000
set PR_JVMOPTIONS=-Duser.language=EN;-Duser.region=en
set PR_DESCRIPTION="My Service Description"
"%PR_INSTALL%" install %SERVICE_NAME%
Le service semble s'être correctement installé; cependant quand je fais:
prunsrv.exe start myservice
à la ligne de commande en tant qu'administrateur, rien ne se passe. Au lieu de cela, je vois ce qui suit dans le journal des événements Windows:
The MyService service terminated with the following service-specific error: Incorrect function.