??? 前幾天在開發中遇到了如何把Java程序注冊為Windows的服務問題,在網上查找了許久,發現了這么一個好東東:
Java Service Wrapper
,下面向大家介紹一下它的簡單用法。
??? 前提
-
可以從下面的網址的 Download 下載相關文件和源代碼,里面還有詳細介紹
??? http://wrapper.tanukisoftware.org/doc/english/introduction.html
??? 使用方法
-
Java Service Wrapper包解壓
-
假設你的java程序的項目目錄為 MyApp ,則需要在此目錄下增加目錄bin、conf、lib
-
把Java Service Wrapper包中bin目錄下的Wrapper.exe、src/bin目錄下的MyApp.bat.in、InstallMyApp-NT.bat.in、UninstallMyApp-NT.bat.in文件拷貝到MyApp的bin目錄中,并分別改名為MyApp.bat、InstallMyApp-NT.bat、UninstallMyApp-NT.bat
-
把Java Service Wrapper包中lib目錄下的Wrapper.DLL、wrapper.jar拷貝到MyApp的lib目錄中
-
把Java Service Wrapper包中srcconf目錄下的wrapper.conf.in拷貝到MyApp的conf目錄中,并命名為wrapper.conf
-
修改wrapper.conf配置文件,方法如下:
??? 主要修改以下幾項即可: ??? #你的JVM位置: ??? wrapper.java.command=D:j2sdk1.4.0_03binjava ??? #運行參數:如: ??? wrapper.java.additional.1=-Dprogram.name=run.bat ??? #你的Java程序所需的jar包必須全部在此標明,注意路徑準確: ??? wrapper.java.classpath.1=../lib/wrapper.jar ??? wrapper.java.classpath.2=... ??? # Java Library Path (location of Wrapper.DLL or libwrapper.so) ??? #你的Wrapper.DLL或wrapper.jar所在的目錄 ??? wrapper.java.library.path.1=../lib ??? #MAIN CLASS 此處決定了使用Java Service Wrapper的方式 ??? wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp ??? #你的Java應用程序的運行類 ??? wrapper.app.parameter.1= NonBlockingServer ??? #注冊為服務的名稱和顯示名,你可以隨意進行設置 ??? wrapper.ntservice.name=XXX # Display name of the service ??? wrapper.ntservice.displayname=XXXXXXXX ??? #服務描述信息 ??? wrapper.ntservice.description=XXXXXXXX ??? 其他的配置根據你的需要改變即可
-
下面就可以運行注冊了,運行MyApp.bat即可運行你的java程序,運行InstallMyApp-NT.bat可以進行服務的注冊,UninstallMyApp-NT.bat為注銷服務
-
運行完注冊服務InstallMyApp-NT.bat可以在 控制面板-管理程序-服務 中看到你注冊的服務名稱(如:XXXXXXXX)
??? 這就是
Java Service Wrapper
的簡單實現,如果有興趣可以參考前面提供的網址進行更深層次的研究。 ??? ?? 我參考了http://www.newbooks.com.cn/info/36520.html ??? ?? 在此表示感謝!
|