1. 程式人生 > >使用winsw部署spring boot jar 項目

使用winsw部署spring boot jar 項目

目的 www. 項目 配置文件 pan ati close ssd 執行

參考:用winsw讓任何Windows程序都能運行為服務

簡介
在linux下部署springboot項目是一件很簡單的事,直接後臺運行就行了,最多寫個shell腳本開機自啟就行了。我們最近做的項目需要在windows上部署,在windows上運行jar有一個問題,運行的時候會彈出一個cmd窗口,並且不能關閉,關閉的話程序就停止了。spring官方推薦使用winsw來將springboot項目作為服務運行,參考https://docs.spring.io/spring-boot/docs/1.5.9.RELEASE/reference/htmlsingle/#deployment-windows。

安裝使用

winsw的使用比較簡單。從github上下載:winsw下載,要下載的文件有兩個:1.winsw.exe程序;2.xml配置文件。

我下載的是最新版本的WinSW.NET4.exe和sample-minimal.xml。下載完成後,將下載的兩個文件及springboot項目的jar包放在同一個文件夾中。

需要將winsw執行程序跟xml改成同樣的名字,推薦使用項目名+Service的命名方式,

比如:WinSW.NET4.exe改成 myProjectService.exe,sample-minmal.xml 改成myProjectService.xml。

技術分享圖片

編輯myProjectService.xml文件,配置如下圖:

技術分享圖片

配置完成後,命令行進入winsw所在的文件夾,執行添加服務命令

myProjectService.exe install

其中myProjectService是你修改後的名稱。

註意:命令提示符界面要用管理員權限進入,否則安裝服務會失敗,提示“WMI Operation failure: AccessDenied

進入服務界面,可以看到myProject服務已經生成了:

技術分享圖片

命令提示符界面-啟動服務。

net start myProject

刪除服務
刪除服務分為兩步:1停止服務;2刪除服務,都是在命令行界面實現。

停止運行服務。

net stop myProject

刪除服務。

myProjectService.exe uninstall

最後
上面所有的命令都可以寫在批處理文件中,部署的時候就可以實現一鍵部署了。

將命令寫在批處理文件中,希望將批處理文件默認為管理員權限打開,可以在批處理文件的開頭寫上:

%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit

cd /d "%~dp0"


轉載:https://blog.csdn.net/qq_28566071/article/details/80882503

使用winsw部署spring boot jar 項目