jar文件配置windows启动服务
相关文档
参考地址=https://github.com/kohsuke/winsw
winsw.exe服务配置程序下载地址=http://repo.jenkins-ci.org/releases/com/sun/winsw/winsw/
源码下载地址=https://github.com/kohsuke/winsw/releases
配置说明
第一步:下载winsw.exe
下载winsw-xxx-bin.exe文件
使用此地址下载:
http://repo.jenkins-ci.org/releases/com/sun/winsw/winsw/
第二步:设置.xml配置文件
生成.xml配置,具体xml配置内容如下
<configuration>
<!-- 服务ID,必须唯一-->
<id>MyApp</id>
<!-- 服务名称 -->
<name>MyApp</name>
<!-- 服务描述 -->
<description>服务描述</description>
<!-- 环境变量配置 -->
<!--<env name="MY_APP_HOME" value="F:\service" /> -->
<!-- 启动可执行文件的路径(C:\java\jdk1.8.0_181\bin\java)
如果已经配置了java环境变量,可以使用以下(java)简写,
也可以使用相对路径的方式配置jdk/jre的java可执行文件路径
%BASE%指当前目录下
-->
<executable>"%BASE%\jre\bin\java"</executable>
<!--
托管可执行文件失败情况下执行的操作: restart, reboot, none
-->
<onfailure action="restart" delay="20 sec"/>
<onfailure action="restart" delay="40 sec"/>
<onfailure action="none" />
<!-- jar文件的启动命令 -->
<arguments>-jar "%BASE%\MyApp.jar" --server</arguments>
<!--
如果startarguments被指定,会覆盖arguments标签的配置,
须与stopexecutable、stoparguments标签配合使用,暂未验证
-->
<!--<startarguments></startarguments>
<stopexecutable></stopexecutable>
<stoparguments></stoparguments>
-->
<!--
设置可执行文件的默认工作目录
如果不设置,默认为服务包装器可执行文件的目录
<workingdirectory>F:\service</workingdirectory>
-->
<!--
期望的处理优先级: Normal, Idle, High, RealTime, BelowNormal, AboveNormal
默认: Normal
-->
<priority>Normal</priority>
<!--
服务启动模式: Automatic, Manual, Boot, System (后者仅支持驱动程序服务)
默认为Automatic
-->
<startmode>Manual</startmode>
<!-- 日志存储位置 -->
<logpath>logs</logpath>
<!--
按大小和时间模式旋转,在旋转尺寸模式和旋转时间模式的组合中工作,
如果日志文件大于设定大小,则使用<pattern>提供的旋转。
-->
<log mode="roll-by-size-time">
<sizeThreshold>10240</sizeThreshold>
<pattern>yyyyMMdd</pattern>
<autoRollAtTime>00:00:00</autoRollAtTime>
<zipOlderThanNumDays>5</zipOlderThanNumDays>
<zipDateFormat>yyyyMM</zipDateFormat>
</log>
</configuration>
第三步:修改文件名
把.jar,.exe,和.xml文件名修改为与xml中id标签的名字一致
上一步id标签的值为MyApp
那么我们就把jar,exe,xml的文件都命名为MyApp
MyApp.jar
MyApp.exe
MyApp.xml
第四步:安装和启动服务
#安装服务
./MyApp.exe install MyApp
#启动服务
./MyApp.exe strat MyApp
#详细命令
install 将服务安装到Windows服务控制器
uninstall 卸载服务
start 启动服务(必须在安装之前安装)
stop 停止服务
stopwait 停止
restart 重新启动服务
restart! 自重启(可从子进程调用)
status 检查服务的当前状态
test 检查服务是否可以启动然后停止
testwait 启动服务并等待按键,然后停止服务
version 打印版本信息
help 打印帮助信息(别名:-h,--help,-?,/?)
#备注服务安装后也可以在我的电脑=> 管理 => 找到配置的服务名称设置启动方式