java开发多个微服务系统,jar包方式运行,windows服务器部署,每个服务一个小黑框,写bat脚本程序,无法看到哪个命令框是哪个程序,每次关机得自己去重启,管理困难。经过搜寻查到了WinSW v3.00这个程序,亲自测试使用了一下,成功了。
一、jar包实现效果:
一个exe文件、一个xml、一个jar包
我的电脑--管理--服务--启动,设置开机自动启动
二、程序下载
下载地址:WinSW-x64.exe(下载地址:Releases · winsw/winsw · GitHub)
非常卡,建议直接csdn下载。
https://download.csdn.net/download/yaya_jn/86608351
三、程序修改
以sviewcloud-dispatch.jar为例,将WinSW-x64.exe文件复制进入jar包同一个目录改成同jar包名称一样,新建一个同名XML文件,修改id、name、arguments、description等数据
sviewcloud-dispatch.xml
<service>
<id>sviewcloud-dispatch</id>
<name>sviewcloud-dispatch</name>
<description>This is sviewcloud-dispatch service.</description>
<!-- java环境变量 -->
<env name="JAVA_HOME" value="%JAVA_HOME%"/>
<executable>java</executable>
<arguments>-Dfile.encoding=utf-8 -jar "E:\SViewCloud2.0\SView\sviewcloud-dispatch.jar"</arguments>
<!-- 开机启动 -->
<startmode>Automatic</startmode>
<!-- 日志配置 -->
<logpath>%BASE%\log</logpath>
<logmode>rotate</logmode>
</service>
结果
四、程序配置安装,启动
win+r 键---》 cmd 命令框,输入
D:\sviewcloud-dispatch.exe install
安装成功,我的电脑---管理---服务 找到这个服务,右键点击启动
服务卸载命令
D:\sviewcloud-dispatch.exe uninstall
查看命令
D:\sviewcloud-dispatch.exe -h
如果没有配置环境变量,直接将三个文件扔到java的bin目录下运行。去掉标签<env name="JAVA_HOME" value="%JAVA_HOME%"/>
Nginx服务部署
WinSW-64文件同样下载,放nginx.exe同目录
winsw.XML文件配置:修改executable、startarguments、stopexecutable、stoparguments 配置nginx路径
<?xml version="1.0" encoding="UTF-8" ?>
<service>
<id>nginx</id>
<name>Nginx Service</name>
<description>High Performance Nginx Service</description>
<logpath>D:\nginx-1.21.5\logs</logpath>
<log mode="roll-by-size">
<sizeThreshold>10240</sizeThreshold>
<keepFiles>8</keepFiles>
</log>
<executable>D:\nginx-1.21.5\nginx.exe</executable>
<startarguments>-p D:\nginx-1.21.5</startarguments>
<stopexecutable>D:\nginx-1.21.5\nginx.exe</stopexecutable>
<stoparguments>-p D:\nginx-1.21.5 -s stop</stoparguments>
</service>
cmd命令
winsw.exe install
效果
nacos服务部署
WinSW-x64.exe 重命名为nacos-server-8848.exe
新建nacos-server-8848.xml文件
<service>
<!-- 指定在Windows系统内部使用的识别服务的ID。在系统中安装的所有服务中,这必须是唯一的,它应该完全由字母数字字符组成 -->
<id>nacos-service-8848</id>
<!-- 服务的简短名称,它可以包含空格和其他字符。尽量简短,就像“id”一样,在系统的所有服务名称中,也要保持唯一 -->
<name>nacos-service-8848</name>
<!-- 该服务可读描述。当选中该服务时,它将显示在Windows服务管理器中 -->
<description>nacos-service-8848</description>
<!-- 该元素指定要启动的可执行文件 -->
<executable>%BASE%\startup.cmd</executable>
<arguments>-m standalone</arguments>
<!-- 日志输出位置 -->
<logpath>%BASE%\serviceLogs</logpath>
</service>
启动服务
nacos-server-8848.exe install
服务管理启动设置---》成功
除install之外,还有如下命令:
- uninstall:删除服务
- start:启动服务
- stop:停止服务
- restart:重启服务
- status:查看状态