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 #查看状态
如下
总结
到此这篇关于Windows部署Jar包的三种方式的文章就介绍到这了,更多相关Windows部署Jar包内容请搜索好代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持好代码网!