一、nssm简介
nssm是一个开源的服务封装程序,它可以将普通exe程序封装成服务,实现开机自启动,同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大。
它的特点如下:
- 支持普通exe程序(控制台程序或者带界面的Windows程序都可以)
- 安装简单,修改方便
- 可以自动守护封装了的服务,程序挂掉了后可以自动重启
二、下载地址
官网地址
官网源码地址
三、nssm配置详解
- 下载程序,解压压缩包,根据系统位数选择64或32位程序。
- 将
nssm.exe
程序路径添加到环境变量patch
中,方便在CMD
命令提示符中使用。或者直接将nssm.exe
复制到系统已有的环境变量目录中,例如:C:\windows\
目录,省去了配置环境变量的步骤。
- 使用
nssm
:打开命令行,运行nssm程序。
配置项说明,通常配置Application就够了:
- Path:运行应用程序的程序,可以是命令如:
java
,也可以是绝对路径如:C:\Program Files\jdk\bin\java.exe
- Startup directory:通常是运行程序的目录,如果运行的是
java程序
可能是jar
包所在的目录,本参数可以理解为当前路径CD
路径
- Arguments:应用运行的参数,例如:
-jar Bootstrap.jar
- Service name:生成服务的名称
最后点击install service 完成windows服务安装,在windows服务列表就能看到创建的服务了。
- 常用命令
rem 创建servername服务,弹出配置界面
nssm install servername
rem 启动服务
nssm start servername
rem 停止服务
nssm stop servername
rem 重新启动服务
nssm restart servername
rem 更改servername服务,弹出修改界面
nssm edit servername
rem 设置服务参数值
nssm set servername 参数名 参数值
rem 备份服务为安装命令,会输出多条“nssm set servername 参数名 参数值”内容
nssm dump servername
rem 删除创建的servername服务
nssm remove servername
rem windows删除服务命令:sc是windows自带命令
sc delete servername
直接使用windows的服务管理也可以实现服务的操作,服务右键属性 - 恢复即可设置服务挂掉重启等内容。