溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

怎么進(jìn)行Windows 64位環(huán)境的Java服務(wù)配置

發(fā)布時(shí)間:2021-10-29 09:38:25 來(lái)源:億速云 閱讀:168 作者:柒染 欄目:編程語(yǔ)言

怎么進(jìn)行Windows 64位環(huán)境的Java服務(wù)配置,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

最近有個(gè)任務(wù),需要遠(yuǎn)程起調(diào)Windows64服務(wù)器下的程序,那么需要在Windows服務(wù)器中注入一個(gè)deamon服務(wù),都知道Linux環(huán)境做成后臺(tái)服務(wù)非常簡(jiǎn)單,nohup &很快能解決問(wèn)題,但windows環(huán)境總是多重磨難。

一開(kāi)始我先問(wèn)了個(gè)朋友,他回答是沒(méi)做成服務(wù),是把寫(xiě)個(gè)Pathon包在java外面,然后編譯成exe,在啟動(dòng)中加入,我一聽(tīng)覺(jué)得有些麻煩,還需要繞一圈才能起調(diào)。
先搜Java windows service, 推薦***Wrapper,并且大名鼎鼎的ActiveMQ也是用的他做的服務(wù),經(jīng)過(guò)驗(yàn)證,配置很簡(jiǎn)單,copy wrapper.exe, wrapper.dll, wrapper.jar到自己的目錄,并配置一個(gè)wrapper.conf, 測(cè)試。

wrapper.exe -c wrapper.conf

發(fā)現(xiàn)有問(wèn)題,需要一個(gè)licence key,需要購(gòu)買(mǎi)。

也許還有方法去破解,不過(guò)看了一個(gè)老外說(shuō)wrapper對(duì)windows64位并不免費(fèi),并推薦Procrun之后,決定轉(zhuǎn)到這一陣地,加上大名鼎鼎的Tomcat也是用它做的服務(wù)。整個(gè)配置如下:

1.下載prunsrv

http://archive.apache.org/dist/commons/daemon/binaries/windows/

下載commons-daemon-1.0.8-bin-windows.zip

網(wǎng)上找這個(gè)不容易,后來(lái)才在commons-daemon-1.0.8-bin-windows.zip里面找到這個(gè),一般會(huì)找到http://commons.apache.org/daemon/download_daemon.cgi,這里面并沒(méi)有prunsrv.exe

解包后,64位機(jī)器用amd64/prunsrv.exe

2.解壓后復(fù)制文件

a. copy commons-daemon-1.0.8-bin-windows/amd64/prunsrv.exe to your app path

這是做服務(wù)的執(zhí)行程序

b. copy commons-daemon-1.0.8-bin-windows/prunmgr.exe 并改名 yourappname.exe

監(jiān)控服務(wù)配置及運(yùn)行的程序

3.寫(xiě)兩個(gè)腳本

a.一個(gè)安裝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命令的折行符,為了避免在一行中寫(xiě)過(guò)長(zhǎng)的命令。(Linux 是\)

在dos環(huán)境下執(zhí)行這個(gè)腳本,執(zhí)行后

這樣可以在控制面板-->管理工具-->服務(wù)里面可以看到名稱(chēng)為StartService的服務(wù)

注意:--install=后面不要省%APP_HOME%\,不然會(huì)報(bào)告文件找不到

b.寫(xiě)一個(gè)uninstall腳本

@echo off  set APP_HOME=******  %APP_HOME%\prunsrv.exe //DS//StartService

這個(gè)可以卸掉install的服務(wù)

c.更詳細(xì)的配置文檔可以看apache文檔

看完上述內(nèi)容,你們掌握怎么進(jìn)行Windows 64位環(huán)境的Java服務(wù)配置的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI