Java Service Wrapper 发布Java程序为Windows服务

下载Windows版本http://nchc.dl.sourceforge.net/sourceforge/wrapper/wrapper-windows-x86-32-3.2.3.zip

      现在目前只要32位有免费的,64位免费版目前还没有做出来。官网上(社区)那一列是免费的。

       1.先把你的项目用MANIFEST.MF打成jar包,例如bb.jar。新建目录,例如:dist,放在D盘下面。把bb.jar放到dist目录下。

       2.在dist目录下新建conf,lib,log三个文件夹。conf是配置文件存放地方,lib是发布的包存放的地方,log是日志文件存放的地方

       3.将下载下来的wrapper-windows-x86-32-3.2.3.zip解压,将Java Service  Wrapper包中src/bin/目录下的的App.bat.in,InstallApp-NT.bat.in,UninstallApp-NT.bat.in 和 bin 目录下的wrapper.exe放在dist目录下。把后缀.in去掉说明:【App.bat(可以直接运行程序),InstallApp-NT.bat(安装成Windows服务),UninstallApp-NT.bat(卸载Windows服务)

         

           修改App.bat,InstallApp-NT.bat,UninstallApp-NT.bat这三个文件中的中的set  _WRAPPER_CONF="%_REALPATH%confwrapper.conf"。

                                                                                                 或者set  _WRAPPER_CONF="D:distconfwrapper.conf"。

     

       
      4.把Java Service  Wrapper包中lib目录下的Wrapper.DLL,wrapper.jar拷贝到dist/lib下
       
       5.把Java Service Wrapper包中src/conf目录下的wrapper.conf.in放到project/conf下,去掉后缀.in。然后修改wrapper.conf文件:

         wrapper.java.command=%JAVA_HOME%/bin/java      这里指的是用来执行你程序的java.exe路径

         wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp     采用第一种整合方式,用它来封装程序

         wrapper.java.classpath.1=E:/dist/lib/wrapper.jar   这里添加是用到的jar包文件,从1---n自己写,不过wrapper是必须的

         wrapper.java.classpath.2=E:/dist/aa.jar

         wrapper.java.library.path.1=E:/dist/lib        这个是要存放wrapper.dll位置

         wrapper.app.parameter.1=org.wise.frame.MainFrame    这个是你自己可执行程序的主类

         wrapper.logfile=E:/dist/log/wrapper.log       指定日志文件存放的地方

         wrapper.console.title=MyApp服务
         wrapper.ntservice.name=MyApp服务               这4个是给服务起的名字

         wrapper.ntservice.displayname=MyApp服务
         wrapper.ntservice.description=MyApp服务

 6.然后直接运行App.bat,如果运行成功的话,然后就可以执行InstallApp-NT.bat发布成Windows服务,然后就可以设置成开机自启动了,不怕别人启动的时候自己的程序没有执行。

    

这样子就是正常启动App.bat(控制台)

      

原文地址:https://www.cnblogs.com/junrong624/p/3760663.html