前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用winsw部署SpringBoot项目

使用winsw部署SpringBoot项目

作者头像
Ant丶
发布2022-05-11 20:02:16
8980
发布2022-05-11 20:02:16
举报
文章被收录于专栏:cayzlhcayzlh

使用winsw部署SpringBoot项目

简介

在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。

使用

下载地址:https://github.com/winsw/winsw/releases

winsw的使用比较简单。从github上下载:winsw下载,要下载的文件有两个:1.winsw.exe程序;2.xml配置文件。

下载后将winsw执行程序和xml改成同样的名字,比如使用项目名+Service的命名方式。

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

编辑myProjectService.xml文件

内容如下:

代码语言:javascript
复制
<configuration>
	<id>myProjectService</id>
	<name>myProject</name>
	<description>接口中转服务</description>
	<executable>C:\Java\jre-18\bin\java.exe</executable>
	<arguments>-jar -Dserver.port=18080 -Xms128m -Xmx512m myProjectService-0.0.1-SNAPSHOT.jar</arguments>
</configuration>

安装执行服务

执行命令:

代码语言:javascript
复制
myProjectService.exe install

启动服务

执行命令:

代码语言:javascript
复制
net start myProject

停止服务

执行命令:

代码语言:javascript
复制
net stop myProject

删除服务

删除服务:

代码语言:javascript
复制
myProjectService.exe uninstall

最后

上面所有的命令都可以写在批处理文件中,部署的时候就可以实现一键部署了。

将命令写在批处理文件中,希望将批处理文件默认为管理员权限打开,可以在批处理文件的开头写上:

代码语言:javascript
复制
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit

cd /d "%~dp0"

参考资料

许可协议

本文采用 署名-非商业性使用-相同方式共享 4.0 国际 许可协议,转载请注明出处。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-05-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用winsw部署SpringBoot项目
    • 简介
      • 使用
        • 编辑myProjectService.xml文件
        • 安装执行服务
        • 启动服务
        • 停止服务
        • 删除服务
        • 最后
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档