標籤:rip 開源 blog 同名 mod exec windows服務 安裝 準備
背景:
使用Spring Boot開發的Web項目,打包產生了一個jar包,希望能部署在Windows伺服器中
嘗試:
1、Spring Boot產生的jar包,可以直接用java -jar運行,但是前提是需要登入使用者,而且登出使用者後會退出程式,所以不可信。
2、使用計劃任務,寫一個bat批次檔,裡面寫java -jar運行程式,然後吧bat檔案作為一個計劃任務運行;結果可能是因為任務啟動時,系統資源未準備好,所以沒有成功。
最終方案:使用winsw
winsw是一個開源項目,程式以及源碼可以在Git Hub中下載:https://github.com/kohsuke/winsw/releases
winsw是一個可以將任何應用程式註冊成服務的軟體
使用方法:
1、下載exe檔案,假設改名成winsw.exe
2、同目錄下建立一個同名的xml檔案,如winsw.xml
其中參數自己看一下就可以了
<service> <id>myApp</id> <name>myApp</name> <description>To start my app as a service.</description> <executable>java</executable> <arguments>-Xmx256m -jar c:\myApp.jar" --server.port=80</arguments> <logmode>rotate</logmode></service>
3、使用cmd,用cd命令轉到winsw.exe所在檔案夾,然後執行命令
安裝服務命令:MyApp.exe install
卸載服務命令:MyApp.exe uninstall
4、開啟系統服務功能:運行——輸入services.msc,即可看見自己命名的服務myApp
5、設定服務為自動,並啟用即可
Spring Boot項目產生jar包,並在windows伺服器中註冊成服務,開機啟動