您好,登錄后才能下訂單哦!
怎么進行Windows 64位環境的Java服務配置,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
最近有個任務,需要遠程起調Windows64服務器下的程序,那么需要在Windows服務器中注入一個deamon服務,都知道Linux環境做成后臺服務非常簡單,nohup &很快能解決問題,但windows環境總是多重磨難。
一開始我先問了個朋友,他回答是沒做成服務,是把寫個Pathon包在java外面,然后編譯成exe,在啟動中加入,我一聽覺得有些麻煩,還需要繞一圈才能起調。
先搜Java windows service, 推薦***Wrapper,并且大名鼎鼎的ActiveMQ也是用的他做的服務,經過驗證,配置很簡單,copy wrapper.exe, wrapper.dll, wrapper.jar到自己的目錄,并配置一個wrapper.conf, 測試。
wrapper.exe -c wrapper.conf
發現有問題,需要一個licence key,需要購買。
也許還有方法去破解,不過看了一個老外說wrapper對windows64位并不免費,并推薦Procrun之后,決定轉到這一陣地,加上大名鼎鼎的Tomcat也是用它做的服務。整個配置如下:
1.下載prunsrv
http://archive.apache.org/dist/commons/daemon/binaries/windows/
下載commons-daemon-1.0.8-bin-windows.zip
網上找這個不容易,后來才在commons-daemon-1.0.8-bin-windows.zip里面找到這個,一般會找到http://commons.apache.org/daemon/download_daemon.cgi,這里面并沒有prunsrv.exe
解包后,64位機器用amd64/prunsrv.exe
2.解壓后復制文件
a. copy commons-daemon-1.0.8-bin-windows/amd64/prunsrv.exe to your app path
這是做服務的執行程序
b. copy commons-daemon-1.0.8-bin-windows/prunmgr.exe 并改名 yourappname.exe
監控服務配置及運行的程序
3.寫兩個腳本
a.一個安裝bat
@echo off set LIB_HOME=****** set APP_HOME=****** %APP_HOME%\prunsrv.exe //IS//StartService --DisplayName="Start Service" --Description="Start a server." ^ --Install=%APP_HOME%\prunsrv.exe --Jvm=%JAVA_HOME%\jre\bin\server\jvm.dll --JvmMs=256 --JvmMx=1024 ^ --StartMode=jvm --Startup=auto --StopMode=jvm --StartClass= --StartParams= ^ --Classpath=%LIB_HOME%\*.jar; ^ --LogPath= --LogPrefix=
^是windows命令的折行符,為了避免在一行中寫過長的命令。(Linux 是\)
在dos環境下執行這個腳本,執行后
這樣可以在控制面板-->管理工具-->服務里面可以看到名稱為StartService的服務
注意:--install=后面不要省%APP_HOME%\,不然會報告文件找不到
b.寫一個uninstall腳本
@echo off set APP_HOME=****** %APP_HOME%\prunsrv.exe //DS//StartService
這個可以卸掉install的服務
c.更詳細的配置文檔可以看apache文檔
看完上述內容,你們掌握怎么進行Windows 64位環境的Java服務配置的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。