前情提要:最近公司的項目,需要做成服務啓動。我負責的項目是一個SpringBoot的框架。
方法一:bat腳本方式
第一步:製作bat腳本
做一個很簡單的bat腳本:在你的SpringBoot的jar包的同目錄下,建一個txt文檔,改名成.bat後綴就行了,裏面的內容就是啓動SpringBoot服務的命令,比如
java -jar test-0.0.1-SNAPSHOT.jar
做完之後,可以雙擊運行改腳本,試一試腳本是否好使。
第二步:bat腳本做成服務
下載工具
下載微軟系統小工具instsrv.exe和srvany.exe複製到C:\Windows\System32目錄(64位操作系統複製一份到C:\Windows\SysWOW64目錄下)。
鏈接:https://pan.baidu.com/s/1_8eHAiJWc2FBBUZ9t3EiNA
提取碼:27xg
運行工具
然後打開cmd,運行命令,其中ServiceName爲你要創建的服務名
instsrv ServiceName C:\Windows\System32\srvany.exe
運行成功後如下
修改註冊列表
打開註冊列表(運行裏面運行regedit),打開目錄HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\,找到對應的剛纔創建的ServiceName。
如果該服務名下沒有Parameters項目,則對服務名稱項目右擊新建項,名稱爲Parameters,然後定位到Parameters項,新建以下幾個字符串值。
名稱 Application 值爲你要作爲服務運行的BAT文件地址。
名稱 AppDirectory 值爲你要作爲服務運行的BAT文件所在文件夾路徑。
名稱 AppParameters 值爲你要作爲服務運行的BAT文件啓動所需要的參數。
然後再服務裏面就能啓動了。
缺點
此方法部署後,因爲是bat腳本啓動,當你關掉服務的時候,無法關閉java進程。所以該方法應該只適用做電腦重啓後,服務自動啓動。