使用nssm注册系统服务的详细方法

本文详细介绍了如何使用nssm在Windows系统中将Java jar包转换为可执行服务,并完成自启动,包括下载nssm、编写启动脚本、注册服务、配置参数和注意事项。涉及步骤包括设置服务标题、路径、描述,以及常用nssm指令的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用nssm注册系统服务流程

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

1.下载nssm

访问nssm官网,下载nssm:
在这里插入图片描述
解压后,看到有win32和win64两个目录,查看需要注册服务的PC是32位系统还是64位系统,就将该目录下的nssm.exe程序复制到需要注册服务的服务器上。
在这里插入图片描述

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.将系统服务设置为延迟启动(建议)
右键系统服务,将服务设置为自动(延迟启动),然后启动系统服务即可。
建议设置为延迟启动,否则可能会影响其他系统服务的启动速度。
在这里插入图片描述

---------------------当然,更简便的方式是使用nssm注册服务时,直接设置自启动(延迟启动):-------------------------

在这里插入图片描述

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服务

<think>好的,我现在需要帮助用户了解如何使用nssm进行Windows服务管理。首先,我要回忆一下用户提供的引用内容,确保回答准确。引用1提到了安装批处理文件、查看服务、配置命令等;引用2和3补充了官网和下载链接。用户的问题主要是nssm使用方法和配置,所以需要覆盖安装、基本命令、配置服务、注意事项等步骤。 首先,用户可能不知道如何下载和安装nssm,所以需要先说明下载步骤,并建议将nssm.exe加入系统路径,方便使用。接着,安装服务是核心部分,应该详细说明命令行的使用,比如nssm install,并给出示例,比如安装Nacos服务的例子,这样用户更容易理解。然后,管理服务的命令如启动、停止、重启和删除也需要逐一列出,确保用户知道每个操作的具体命令。 查看和配置服务部分,引用1提到通过services.msc或者计算机管理来查看,这里需要转述成用户容易操作的方式,比如运行命令或者图形界面。配置服务时,edit命令很重要,需要强调如何修改参数,比如内存设置。此外,其他常用命令如启动类型调整可能用户也会需要,可以补充说明sc命令的使用,虽然这不是nssm自带的,但能帮助用户更全面管理服务。 注意事项部分,必须强调管理员权限,否则用户可能遇到权限问题。另外,配置灵活性和日志检查也很重要,用户遇到问题时可以自主排查。需要确保这些内容清晰易懂,避免技术术语过多,让新手也能跟随操作。 最后,生成相关问题时要覆盖安装、常见命令、优势、日志查看和卸载等,这些都是用户可能进一步想了解的。要确保每个问题都能在之前的回答中找到基础,引导用户深入学习。 检查是否所有步骤都符合系统级指令,比如数学公式是否正确使用,这里可能用不上,但要注意中文回答和结构清晰。确保引用标识正确添加,比如引用1、2、3对应的内容在回答中正确标注,没有遗漏。代码块部分要使用正确的语法,比如安装服务的命令行示例,保持格式正确。 总结回答结构:下载安装、安装服务、管理命令、查看配置、注意事项、相关问题。这样用户能一步步按照流程操作,不会有遗漏。同时,示例部分用Nacos作为案例,帮助用户更直观地应用,符合引用2中的内容。整个回答需要逻辑清晰,步骤明确,确保用户能顺利使用nssm进行服务管理。</think>### 使用NSSM进行Windows服务管理教程 NSSM(Non-Sucking Service Manager)是一款轻量级工具,用于将普通应用程序注册为Windows服务,并提供灵活的服务管理功能。以下是具体使用方法: --- #### 1. **下载与安装NSSM** - 访问官网下载页面([nssm.cc/download](http://nssm.cc/download)),选择最新版本(如`nssm-2.24.zip`)[^3]。 - 解压压缩包后,将`nssm.exe`复制到系统路径(如`C:\Windows`)或自定义目录,以方便命令行调用[^3]。 --- #### 2. **安装服务** **命令格式:** ```cmd nssm install <服务名> ``` **操作步骤:** 1. 以管理员身份打开CMD或PowerShell。 2. 运行`nssm install nacos`(以Nacos为例),弹出配置窗口[^2]。 3. 在配置界面填写以下关键参数: - **Path**:选择应用程序的可执行文件(如`nacos\bin\startup.cmd`)。 - **Startup directory**:设置程序的工作目录(如`nacos\bin`)。 - **Arguments**:按需添加启动参数(如`-m standalone`)。 4. 点击`Install service`完成安装[^2]。 --- #### 3. **管理服务常用命令** - **启动服务**:`nssm start <服务名>` - **停止服务**:`nssm stop <服务名>` - **重启服务**:`nssm restart <服务名>` - **删除服务**:`nssm remove <服务名> confirm`(无需确认弹窗)[^1] --- #### 4. **查看与配置服务** - **查看服务列表**:运行`services.msc`打开服务管理器,或使用CMD命令`sc query`。 - **修改服务配置**:`nssm edit <服务名>`,可调整启动类型、内存限制等参数[^1]。 - **设置启动类型**: ```cmd sc config <服务名> start= auto # 自动启动 sc config <服务名> start= demand # 手动启动 ``` --- #### 5. **注意事项** - **管理员权限**:所有操作需在管理员权限下执行,否则会提示权限不足。 - **日志与调试**:若服务启动失败,检查NSSM生成的日志文件(默认在服务配置的`Application`标签页中指定)。 - **灵活配置**:支持环境变量、依赖服务、CPU亲和性等高级设置,通过配置界面调整[^3]。 --- ### 示例:将Java应用注册服务 ```cmd nssm install myapp # 配置Path为java.exe,Arguments为-jar myapp.jar nssm set myapp AppDirectory C:\myapp nssm start myapp ``` ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值