Run JAVA as a Windows service (this howto is deprecated)Tag(s): DEPRECATED
A solution adapted to Java, is YAJSW( Yet Another Java Service Wrapper ) ( http://yajsw.sourceforge.net/ ) (opensource).
The setup is very simple with one configuration file and your Java service can be notified when the service is stopped.
If you log in and log out from a machine and a java service is running then the service may be stopped. The fix is to use Java 1.3.1 or higher and start the process with the JVM switch -Xrs (Reduce Signals Xtended-switch) to stop the Windows signal from killing the JVM.
For BEA JRockit, it's the -Xnohup
Also, it's possible to the utility SRVANY.EXE, included with the NT resource Kit.
http://www.techeez.com/windows_tips/service_under_nt.htm
SVRANY is used to run any EXE as a windows service. In our situation, SVRANY will run the specified JAVA.EXE with our class a parameter. But this solution presents many problems. For exemple, if you kill the SVRANY.EXE process (stop the service) then the JAVA.EXE is not killed, you need to do it manually.
Send comment, question or suggestion to howto@rgagnon.com