通过nssm在windows系统下把jar包打包成服务

问题背景:

  • 最近项目经常需要访问中台,而我们的中台都是小型的中台,比如执行定时任务的,执行通信任务的等等;
  • 同时这些中台都是以jar包的形式存在的,每次通过java -java ** 命令行启动比较麻烦,同时会有很多人都会操作服务器,很有可能会被误关掉;
  • 因此,我选择了通过nssm这个东西把jar包发布成windows服务,并且自动运行,就方便多了。

运行环境:

win10 64位操作系统 (各版本的 winService 服务器都是通用的)

本文案例

  • 本文中,我会把我的一个myservice.jar文件打包成windows服务,服务名称也叫myservice

操作步骤

1. 下载nssm

我把自己用的nssm已经上传到了博客园,包括32位和64位版本的,链接在这儿:博客园nssm下载

2. 创建一个bat文件,同时文件中只填写一行执行jar包的命令

java -jar myservice.jar
image

3. 打开64位的nssm.exe所在目录,同时在当前目录打开cmd窗口

image
image

4. 在cmd窗口中输入命令 nssm install myService ,打开nssm配置服务的页面,并配置myservice服务

- 4.1选择bat执行文件,配置服务名称

image

- 4.2配置日志文件存储路径,完成后点击 Install Service 创建服务

image

- 文件创建成功,弹窗提示

image

5. 这个时候我们打开服务窗口,就会看到创建好的 myservice 服务

  • 右键属性,设置为自动启动,然后点击启动,就可以了。

image

  • 打开日志文件,会发现服务已经启动成功

image

6. 卸载服务

  • 如果我们不想要这个服务了,也可以卸载nssm服务;
  • 在cmd窗口中输入命令 nssm remove myservice ,然后点击确定就可以了

image

  • 这时会有提示,服务已卸载

image

  • 或者直接用管理员启动cmd窗口,然后输入 SC delete myservice 指令,也能删除服务
posted @ 2022-05-19 17:49  江云风  阅读(723)  评论(0编辑  收藏  举报
// 点击-心形效果