当前位置: 首页 > news >正文

Windows部署Jar包的三种方式

文章目录

      • 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配置

<service> <!-- 服务唯一ID --><id>imApiId</id><!-- 服务名称--><name>imApiService</name><!-- 服务描述--><description>this is im api,author:chaodev</description><executable>java</executable> <arguments>-jar imApi.jar</arguments><!-- 开机启动 --><startmode>Automatic</startmode><!-- 日志配置 --><logpath>%BASE%\logs</logpath><logmode>rotate</logmode></service>

参数说明如下:

  • 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 #查看状态

如下

在这里插入图片描述



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

http://www.lryc.cn/news/16968.html

相关文章:

  • 【图像分类】卷积神经网络之AlexNet网络模型结构详解
  • 学习动漫插画的网络班排行榜
  • SpringCloud第五讲 Nacos注册中心-服务注册到Nacos
  • IP地理位置定位技术原理是什么
  • j-vxe-table 下拉搜索选择框数据加载过多导致前端崩溃问题
  • Java国际化ResourceBundle详解
  • 一文高端Android性能优化-总结篇
  • 深入讲解CFS组调度!(上)
  • 大数据实操项目分享:餐饮智能推荐服务在线实习项目
  • 代码随想录day38
  • 《计算机网络:自顶向下方法》实验5:TCP
  • 【踩坑指南】Stable Diffusion 服务器端部署笔记
  • [qiankun]-多页签缓存
  • 2|电子技术|数字电子技术基础|雨课堂习题|考前回顾
  • vue+echarts:圆形柱状图设置角度和最大值
  • Linux系统安装Nginx常见报错问题
  • 按下按键之后,打印一句话------>三个按键需要实现
  • Mac配置VScode
  • MAC地址IP地址 端口
  • 关于虚拟数字人你想知道的都在这里
  • 分布式任务调度处理方案(无代码)
  • 2023年博管办香江学者计划、澳门青年学者开始申报
  • (二十一)、实现评论功能(1)【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】
  • 【Docker】初识Dcoker以及镜像操作(一)
  • (1)C#传智:在vs2022中基本了解(第一天)
  • 【数据结构与算法】算法的时间复杂度和空间复杂度
  • 不使用contab -e的方式,添加计划任务
  • sentry2摄像头之blink篇
  • springboot集成PDF导出
  • Podman 创建持久 MySQL 数据库容器