日期:2014-05-17  浏览次数:20824 次

java程序制作成windows服务(x86_32位)
————————java程序制作成windows服务(x86_32位)—————————————
我是采用的Java Service Wrapper工具, 下载地址:
http://sourceforge.net/projects/wrapper/files/
(当下最新版为 wrapper-windows-x86-32-3.5.11.zip )

步骤:
1、解压缩java service wrapper包,假设目录为:wrapper_home
2、建立一个目录比如:D盘server文件夹里面建立bin、conf、logs、lib文件夹。
3、将wrapper_home/bin目录里wrapper.exe
   将wrapper_home/src/bin目录里App.bat.in
   将wrapper_home/src/bin目录里InstallApp-NT.bat.in
   将wrapper_home/src/bin目录里UninstallApp-NT.bat.in
   统一拷贝至server/bin目录里,并去掉后缀名in。
   将wrapper_home/src/conf目录wrapper.conf.in拷贝至server/conf目录里去掉后缀名in
   再将wrapper_home/lib/目录里面的wrapper.jar和wrapper.dll拷贝至server/lib目录里面
4、将你的应用程序打成jar包后放入server/lib目录里面,如果程序依赖第三方架包,同样将jar包放入该目录下。
5、配置server/conf/wrapper.conf文件。
主要修改以下几项即可:
#你的JVM位置(文中有进行设置的地方...):
wrapper.java.command=%JAVA_HOME%\bin\java
#classpath:里面添加上你要执行的应用程序jar,以及依赖的第三方jar,有多个依次类推
wrapper.java.classpath.1=../lib/应用程序.jar
wrapper.java.classpath.2=../lib/wrapper.jar
wrapper.java.classpath.3=../bin/第三方.jar
# Java Library Path (location of Wrapper.DLL or libwrapper.so)

#你的Java应用类(一般而言就是包含main函数的类 包名.类名),
wrapper.app.parameter.1=com.job.RunOnTime
# Display name of the service(服务名称)
wrapper.displayname=@MyFristWebService@

# Description of the service(服务描述)
wrapper.description=first webservice
其他的配置根据你的需要改变即可
6.  对以上配置的App.bat进行测试,运行App.bat,dos窗口中显示;
7.  对以上配置的服务进行测试,运行server/bin/InstallApp-NT.bat将把你的应用(此处为server)安装到Win32系统服务中了。
8.  打开控制面板-管理程序-服务,看到server已经在系统服务中了,其他用法就与我们熟悉的Windows服务一样了。

bin/App.bat  控制台方式运行程序

bin/InstallApp-NT.bat  安装服务

bin/UninstallApp-NT.bat 删除服务
wrapper.java.library.path.1=../lib(存放.dll的位置)
#MAIN CLASS 此处决定了使用Java Service Wrapper的方式
wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
成功后见下截图


   

   需要强调的是: 如果你工程的jar包很多的话可以采取正则表达式的方式,例如我的lib下有80个jar文件,那么你可以使用/*.jar的形式。 经本人验证OK!