jar发布成windows服务的两种方式

jar发布成windows服务的两种方式

Winsw

winsw(Windows Service Wrapper)是一个开源项目,它可以让我们快速把一个可执行的程序注册为Windows的系统服务。

Download & Install

下载地址:https://github.com/kohsuke/winsw/releases
在这里插入图片描述
1、下载对应平台的.exe(.net2和.net4)。下载地址提供了两份配置文件:

  • sample-allOptions.xml:包含所有配置项
  • smaple-minimal.xml:最小配置项

2、把下载的.exe文件重命名为你自己要用的服务名称,如myapp.exe

3、在myapp.exe同目录下创建xml配置文件,可以复制上面下载的xml,简单配置如下:

<service>
  <!-- 该服务的唯一标识 -->
  <id>myapp</id>
  <!-- 注册为系统服务的名称 -->
  <name>myapp</name>
  <!-- 对服务的描述 -->
  <description>Send the data to customer</description>
  <!-- 将java程序添加到系统服务 -->
  <executable>java</executable>
  <!-- 执行的参数 -->
  <arguments>-jar "myapp.jar"</arguments>
  <!-- 日志模式 -->
  <logmode>rotate</logmode>
</service>

这里配置了一个java的应用程序。

Use

注册服务

myapp.exe install

卸载服务

myapp.exe uninstall

启动服务

myapp.exe start

关闭服务

myapp.exe stop

重启服务

myapp.exe restart 

查看状态

myapp.exe status

NSSM

NSSM是一个服务封装程序,它可以将普通exe程序封装成服务,使之像windows服务一样运行。同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大。

Download & Install

下载地址:http://www.nssm.cc/release/nssm-2.24.zip

1.将打包好的jar包放到一个文件夹中,编写run.bat文件,run.bat内容为:

java -jar xxxx.jar

2.找到对应的nssm.exe文件,打开cmd窗口,输入命令:

nssm.exe install

出现界面:
在这里插入图片描述

Use

1、在Path处选择jar包所在的run.bat
在这里插入图片描述

2、找到下图中标记的I/O中的OutputError,选择输出日志的目录,例如:

D:\LOG\Output.txt

在这里插入图片描述
3、Service name 处填写要发布的服务名称

在这里插入图片描述
4、点击Install service安装服务,cmd进入服务就能看到刚发布的服务名称,启动即可

卸载服务命令:nssm remove 服务名称

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Windows服务器上运行jar包,需要执行以下步骤: 1. 安装Java环境:首先需要在服务器上安装Java环境。可以从Oracle官网下载Java开发工具包(JDK),然后按照安装向导进行安装。 2. 下载jar包:将需要运行的jar包下载到服务器上的某个目录下。 3. 打开命令行界面:在Windows操作系统中,可以按下“Win+R”组合键打开运行窗口,然后输入“cmd”打开命令行界面。 4. 进入jar包所在目录:使用“cd”命令进入存放jar包的目录。例如,如果jar包存放在D盘的myapp目录下,可以使用如下命令进入该目录: ```cd D:\myapp``` 5. 运行jar包:使用Java命令来运行jar包。例如,如果要运行一个名为“myapp.jar”的jar包,可以使用如下命令: ```java -jar myapp.jar``` 运行功后,应该可以看到jar包中的程序开始执行,并在命令行界面上输出相应的信息。 6. 后台运行jar包:如果需要让jar包在后台运行,可以使用如下命令: ```start javaw -jar myapp.jar``` 运行功后,jar包会在后台运行,并不会在命令行界面上输出任何信息。 注意事项: - 为了避免Java虚拟机因为内存不足而崩溃,建议在运行jar包时指定最大堆内存大小。例如,可以使用如下命令: ```java -Xmx512m -jar myapp.jar``` 这将为Java虚拟机分配最大512MB的堆内存。 - 为了避免意外终止jar包的运行,可以使用一些工具来监控和管理jar包的运行状态。例如,可以使用Apache Commons Daemon或Tanuki Software Wrapper等工具。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值