Conozco 2 formas de convertir la aplicación Java en un servicio de Windows y ambas no usan CLASSPATH
. Uno es Java Service Wrapper de Tanuki Software
. Esta herramienta usa wrapper.conf
donde puedes mostrar directorios con .jar
bibliotecas:
# Java Classpath (include wrapper.jar) Add class path elements as
# needed starting from 1
wrapper.java.classpath.1=c:\jars\*
wrapper.java.classpath.2=myservice.jar
La segunda herramienta que conozco es JSL:Java Service Launcher
. En esta herramienta hay jsl.ini
donde pones la línea de comando para ejecutar tu servidor. Puede usar java con -cp
opción para mostrar la ubicación de .jar
bibliotecas:
[defines]
MY_LIBS=d:\jars\*
AXIS_LIBS=d:\axis2-1.5.4\lib\*
CLASSPATH=.;%MY_LIBS%;%AXIS_LIBS%
export = CLASSPATH
...
[java]
...
cmdline = -Dfile.encoding=utf8 -cp %CLASSPATH% example.my.server
En ambas configuraciones puedes usar *
para agregar todo .jar
archivos o puede mostrar esos archivos uno por uno (al igual que en CLASSPATH
).
Al principio, debe saber qué está tratando de ejecutar Windows. Compruébalo en la página de propiedades del servicio. Luego intente localizar su configuración. Si usa una de las herramientas que conozco, entonces sabes qué cambiar. Probablemente otras herramientas tengan una configuración similar.