Windows部署Jar包的三种方式
创始人
2024-05-26 15:23:17
0

文章目录

      • 1、cmd命令启动
      • 2、bat脚本启动
        • 2.1 启动jar包
        • 2.2 关闭服务
      • 3、使用WinSW
        • 3.1 重命名
        • 3.2 xml配置
        • 3.3 安装服务
        • 3.4 卸载服务
        • 3.5 启动和停止服务

1、cmd命令启动

这种方式比较简单,但是窗口关闭后服务也就被杀死了,命令如下

java -jar xxx.jar

在这里插入图片描述


2、bat脚本启动

2.1 启动jar包

新建一个bat脚本,内容如下:

@echo off
%1 mshta vbscript:CreateObject("WScript.Shell").Run("%~s0 ::",0,FALSE)(window.close)&&exit
java -jar F:\IdeaProjects\im-api\target\im-api-0.0.1-SNAPSHOT.jar > imApiLog.log  2>&1 &
exit

其中F:\IdeaProjects\im-api\target\im-api-0.0.1-SNAPSHOT.jar是我jar包的绝对路径,imApiLog.log将日志存储到该文件。右键该bat文件以管理员方式运行即可。

注:听大佬超的,bat文件路径不要有空格,jar包路径别有中文,否则会出现Error: Unable to access jarfile。


2.2 关闭服务

根据项目的端口号,查看端口进程,然后杀死进程即可

netstat -ano|findstr 8088 # 根据端口号查进程
taskkill /f /pid 13968   # 根据进程id杀进程(/f:强制结束该进程以及所有子进程)

在这里插入图片描述

以上两种方式都有点不太利于后期维护,请接着往下看。


3、使用WinSW

地址:https://github.com/winsw/winsw/releases,我这里选择v2.12.0版本。下载WinSW-x64.exe(根据自己的系统版本选择)和sample-minimal.xml,如下

在这里插入图片描述

sample-minimal.xml 是一个最小配置的示例,sample-allOptions.xml 是一个全部可配置参数的示例。


3.1 重命名

为了方便,首先将exe和xml文件放到和jar包一个目录,并根据自己需要进行重命名,如下

在这里插入图片描述


3.2 xml配置

 imApiIdimApiServicethis is im api,author:chaodevjava -jar imApi.jarAutomatic%BASE%\logsrotate

参数说明如下:

  • id:安装windows服务后的服务ID,必须是唯一的。
  • name:服务名称,也必须是唯一的。
  • executable:执行的命令,如启动命令java。
  • arguments:命令执行参数,如指定虚拟机参数,配置文件路径等。
  • startmode:启动模式,如开机启动Automatic。
  • logpath:日志路径,%BASE%代表相对路径,也就是当前目录。

3.3 安装服务

切换到exe所在目录,执行如下命令

imApiService.exe install #根据自己exe文件名称修改

在这里插入图片描述

安装后即可在系统服务里找到该服务,如下

在这里插入图片描述


3.4 卸载服务

利用uninstall命令即可,如下

imApiService.exe uninstall

在这里插入图片描述


3.5 启动和停止服务

除了直接在系统服务界面手动点击控制启动停止外,还可使用如下命令

xxx.exe start #启动服务
xxx.exe stop #停止服务
xxx.exe restart #重启服务
xxx.exe status #查看状态

如下

在这里插入图片描述



更多技术干货,请持续关注程序员大佬超。
原创不易,转载请注明出处。

相关内容

热门资讯

中证A500ETF摩根(560... 8月22日,截止午间收盘,中证A500ETF摩根(560530)涨1.19%,报1.106元,成交额...
A500ETF易方达(1593... 8月22日,截止午间收盘,A500ETF易方达(159361)涨1.28%,报1.104元,成交额1...
何小鹏斥资约2.5亿港元增持小... 每经记者|孙磊    每经编辑|裴健如 8月21日晚间,小鹏汽车发布公告称,公司联...
中证500ETF基金(1593... 8月22日,截止午间收盘,中证500ETF基金(159337)涨0.94%,报1.509元,成交额2...
中证A500ETF华安(159... 8月22日,截止午间收盘,中证A500ETF华安(159359)涨1.15%,报1.139元,成交额...
科创AIETF(588790)... 8月22日,截止午间收盘,科创AIETF(588790)涨4.83%,报0.760元,成交额6.98...
创业板50ETF嘉实(1593... 8月22日,截止午间收盘,创业板50ETF嘉实(159373)涨2.61%,报1.296元,成交额1...
港股异动丨航空股大幅走低 中国... 港股航空股大幅下跌,其中,中国国航跌近7%表现最弱,中国东方航空跌近5%,中国南方航空跌超3%,美兰...
电网设备ETF(159326)... 8月22日,截止午间收盘,电网设备ETF(159326)跌0.25%,报1.198元,成交额409....
红利ETF国企(530880)... 8月22日,截止午间收盘,红利ETF国企(530880)跌0.67%,报1.034元,成交额29.0...