“Springboot jar como servicio de ventana”
Estoy tratando de ejecutar un archivo jar de Spring Boot como servicio de Windows y logré hacerlo usando el siguiente script. Genera dos procesos, prunsrv.exe y java.exe.
Sin embargo, al detener el servicio, solo se detiene prunsrv.exe (usando //SS//Myservice), pero puedo ver que el proceso java.exe sigue en ejecución y tengo que finalizarlo usando el administrador de tareas.
¿Cómo puedo detener ambos procesos al mismo tiempo para que no tenga que buscar el proceso en el administrador de tareas para terminarlo?
set "CLASSPATH=D:\temp-1.0.0.jar"
prunsrv.exe //IS//%SERVICENAME% ^
--Description "Myservice" ^
--DisplayName "%DISPLAYNAME%" ^
--Install "%EXECUTABLE%" ^
--LogPath "D:\MyService" ^
--Startup auto ^
--StdOutput auto ^
--StdError auto ^
--Classpath "%CLASSPATH%" ^
--Jvm "%JVM%" ^
--StartImage "%JAVAHOME%\bin\java.exe" ^
--StartMethod start ^
--StopMethod stop ^
--StartMode exe ^
--StopMode java ^
--StartPath "D:\MyService" ^
--StopPath "D:\MyService" ^
--StartClass com.darth.MyService ^
--StopClass com.darth.MyService ^
--StartParams -jar#%CLASSPATH% ^
--StopParams stop ^
--JvmMs 1024 ^
--JvmMx 6144
davy.ai
Parece que estás buscando una manera de detener tanto los procesos
prunsrv.exe
comojava.exe
al mismo tiempo cuando se detiene el servicio.Una forma de hacer esto es usar la opción
--StopMode exe
en el comandoprunsrv.exe
. Esto hará que el procesoprunsrv.exe
termine el procesojava.exe
cuando se detiene el servicio.El comando actualizado se vería así: