使用nssm注册系统服务的详解

  • 使用nssm注册系统服务流程
    • 1.下载nssm
    • 2.编写Jar包自启动脚本
    • 3.注册系统服务
    • 4.NSSM指令
    • 5.注意事项

使用nssm注册系统服务流程

在项目中需要将用到的jar包、bat脚本和exe应用程序注册成系统服务,并使程序开机自启动。本次使用nssm将应用注册为系统服务。

1.下载nssm

访问nssm官网,下载nssm:

解压后,看到有win32和win64两个目录,查看需要注册服务的PC是32位系统还是64位系统,就将该目录下的nssm.exe程序复制到需要注册服务的PC上。

2.编写Jar包自启动脚本

注意:nssm注册服务仅支持可执行文件(.bat/.exe),如果需要设置jar包自启动,则需要编写jar启动的bat脚本
如果是.bat或.exe可执行的应用程序可以直接注册(忽略2,直接到第三步)

需新建一个txt文档,添加以下代码用于启动jar包,然后将后缀修改为.bat
jar包启动脚本命令如下:

title thinvent-iot
java -jar -Dfile.encoding=utf-8 -Xms1024M -Xmx1024M -XX:PermSize=256M -XX:MaxPermSize=256M thinvent-iot-boot.jar

解释:
第一句:title是应用的标题,直接运行脚本时命令行的标题显示为这个
第二句:指定jar包运行的内存,内存为1024的倍数,thinvent-iot-boot.jar是jar包的名字
需要根据自己的需要修改应用的标题和改为自己的jar包名

3.注册系统服务

如果需要注册服务的应用程序是.bat/.exe,可以直接到这一步注册服务
1.将nssm.exe程序复制到需要注册系统服务的应用程序目录下
如:需要将nginx设置为开机自启动,则将nssm.exe复制到nginx.exe同级目录下
在文件夹中按住shift按键,点击鼠标右键,打开命令行窗口,输入指令:

nssm install 自定义服务名称

此时会打开nssm的窗口

2.配置服务自启动文件的路径
Path:点击此处按钮,选择文件夹下需要自启动的应用程序(.bat/.exe)
Startup directory:自启动应用程序所在的路径,选择应用程序后会自动填充

3.添加服务的描述(建议)
在Details选项卡下的Description栏,添加对服务的描述,便于了解区分注册后的服务功能

4.安装系统服务
点击“Install service”按钮,将可执行程序注册成系统服务

注册成功后,会出现服务注册成功的提示,如下图所示:

查看系统服务,注册成功后可以看到已成功的系统服务列表:

5.将系统服务设置为延迟启动(建议)
右键系统服务,将服务设置为自动(延迟启动),然后启动系统服务即可。
建议设置为延迟启动,否则可能会影响其他系统服务的启动速度。

4.NSSM指令

nssm start servername //启动服务

nssm stop servername //暂停服务

nssm restart servername //重新启动服务

nssm remove servername //删除创建的servername服务

5.注意事项

  1. 在当前目录下启动nssm注册服务,可以将其他目录/路径下的程序注册成服务
    如:在D盘目录下启动nssm后,可以将E盘的程序注册为服务

  2. 从当前目录下使用nssm注册服务后,nssm作为系统服务的启动项,注册的服务通过是nssm来启动的,一定不能删除,否则服务将出现报错无法启动

[1]:参考链接:使用nssm注册 windows服务

使用nssm注册系统服务的详细方法相关推荐

  1. Java Web实现登录注册(超详细附代码)

    Java Web实现登录注册(超详细附代码) 文章目录 Java Web实现登录注册(超详细附代码) 1.前言 2.登录注册设计流程 3.注册的数据流程 4.登录的数据流程 5.部分代码的展示 5.1 ...

  2. 注册表编辑器打开方法

    Windows注册表(Registry)实质上是一个庞大的数据库,它存储着下面这些内容:用户计算机软.硬件的有关配置和状态信息,应用程序和资源管理器外壳的初始条件.首选项和卸载数据:计算机的整个系统的 ...

  3. 计算机桌面锁定,如何设置电脑锁屏壁纸详细方法

    电脑桌面壁纸自动更换如何设置,电脑桌面壁纸,也成为日常办公更换心情的一种方式,而自动更换壁纸的个性化设置,很多人都不知道该怎么操作.那么下面由学习啦小编为你整理了如何设置电脑锁屏壁纸的详细方法,希望对 ...

  4. 一种实现物联网设备自动注册及发现的方法与流程

    http://www.xjishu.com/zhuanli/62/201910087093.html 本发明涉及物联网应用领域,特别是涉及一种实现物联网设备自动注册及发现的方法. 背景技术: 早在上个 ...

  5. mysql导入500g_【案例】Oracle数据库500G~3T大小迁移 详细方法步骤

    天萃荷净 Oracle研究中心案例分析:运维DBA反映在做Oracle数据库500G~3T大小的数据进行迁移,涵盖单机.dataguard.rac迁移. 本站文章除注明转载外,均为本站原创: 转载自l ...

  6. win7打开信息服务器,Win7怎么打开系统服务查看系统服务信息的方法

    摘要 腾兴网为您分享:Win7怎么打开系统服务查看系统服务信息的方法,音恋,晓黑板,小米钱包,网易支付等软件知识,以及惠管家,火萤壁纸,荒岛求生中文补丁,1234漫,电影淘淘,流放之路国服功能补丁,有 ...

  7. idel 智能提示_intellij idea设置代码自动提示快捷键的详细方法.

    一些用户们在使用intellij idea的时候,不是很熟悉其中是怎么设置代码自动提示快捷键?今日这篇文章就带来了intellij idea设置代码自动提示快捷键的详细方法. intellij ide ...

  8. python 打包 .app 运行 控制台窗口_Python打包工具PyInstaller的安装与pycharm配置支持PyInstaller详细方法...

    windows系统下安装Pyinstaller cmd下输入指令 pip install PyInstaller Pyinstaller的使用 进入需要打包的目录下,执行打包命令 Pyinstalle ...

  9. python简单代码画曲线图教程-Python绘制折线图和散点图的详细方法介绍(代码示例)...

    本篇文章给大家带来的内容是关于Python绘制折线图和散点图的详细方法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.绘制折线图和散点图要用到matplotlib ...

  10. python画折线图代码-Python绘制折线图和散点图的详细方法介绍(代码示例)

    本篇文章给大家带来的内容是关于Python绘制折线图和散点图的详细方法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.绘制折线图和散点图要用到matplotlib ...

最新文章

  1. (019)java后台开发之第三方库收集
  2. C 语言里的字符串---字符数组
  3. 【小白学习tensorflow教程】一、tensorflow基本操作、快速构建线性回归和分类模型
  4. Android之实现RecyclerView拖拽效果和固定部分元素不进行交换位置
  5. MOSS/Sharepoint RBS概念以及运用
  6. 架构设计中的方法学(七)
  7. 调用discuz编辑器发布帖子显示html代码的解决办法
  8. windows 运行banana
  9. 对计算机网络的基础认识
  10. kangle配置cdn_kangle穿刺及cdn回源配置
  11. python之matplotlib画二元函数图像
  12. html5远程桌面 微软,微软正在测试远程桌面HTML5网页版本客户端!
  13. 程序设计入门-java
  14. java毕业设计——基于Java+Java ME的无线网络移动端的俄罗斯方块游戏设计与实现(毕业论文+程序源码)——俄罗斯方块游戏
  15. 南京大学软件学院 西交计算机,2021届薪酬最高的十大本科专业,前三名都是计算机和相关专业...
  16. 双系统安装deepin20_记录一次Windows+Deepin双系统安装及简单优化
  17. 常用元器件使用方法1:DCDC降压芯片SY8303的使用方法
  18. 钉钉 for Mac(企业通讯软件)
  19. MEMS加速度计的概念
  20. 【大数据】整理-政务数据管理能力指数(GDMI)评估指标体系

热门文章

  1. 路由与交换技术笔记(eNSP)
  2. Phaserjs基础教程第二节:加载图片、文字和动画
  3. Stata:产生唯一数据编码的三种方法
  4. 17届智能汽车竞赛无线充电组的方案研究(非正经)
  5. 如何设置AD域用户仅登录到指定的计算机?AD域管理软件
  6. xmpp java_XMPP: Android基于Xmpp的即时通讯
  7. lintcode-微软笔试
  8. linux hg 图形,Linux下Mercurial (hg)配置说明
  9. layui 时间控件二次渲染,点击一个自定义按钮清空/重置时间控件
  10. 基于Matlab的语音识别