jar文件配置windows启动服务

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,-?,/?)

#备注服务安装后也可以在我的电脑=> 管理 => 找到配置的服务名称设置启动方式
上一篇:shell 等待某个进程的加载


下一篇:Flutter学习笔记(三) && 第一个flutter