Java开发的简单Windows服务安装管理工具,支持JAR包和EXE安装为Windows服务,并支持批量管理已安装服务。
本程序使用NSSM命令行方式安装Windows服务。
- 本项目基于Java的swing界面,简单可靠,并使用了idea样式,界面美观大方
- 内置了NSSM,无需额外安装
- 无需手动编写配置文件,可视化安装、运行、停止和卸载Windows服务,方便管理
- 支持批量管理服务
- 支持Jar包和EXE可执行文件
- 操作简单。程序启动自动搜索并带入JVM路径和NSSM路径,用户只需选择需要安装的
Jar包或exe即可完成安装
- 无需安装,使用管理员权限打开exe可执行文件(未内置jre,需要提前安装好JRE环境)
批量管理:
- 使用管理员用户权限运行打包的exe可执行文件
-
新建服务流程: 用户配置 → 安装服务 → 自动保存到配置 → 切换到服务列表
-
服务管理流程: 加载配置 → 显示服务列表 → 用户选择 → 批量操作 → 更新状态
-
配置持久化: 内存配置 ↔ 配置文件 ↔ 服务状态
系统现在会自动为每个服务创建独立的NSSM副本:
项目根目录/
├── nssm/ # 主NSSM目录
│ └── nssm.exe # 主NSSM文件
├── services/ # 服务专用目录
│ ├── Service1/ # 服务1专用目录
│ │ └── nssm.exe # 服务1专用的NSSM副本
│ ├── Service2/ # 服务2专用目录
│ │ └── nssm.exe # 服务2专用的NSSM副本
│ └── Service3/ # 服务3专用目录
│ └── nssm.exe # 服务3专用的NSSM副本
└── JNSM_config.properties # 配置文件
- 系统检查主NSSM文件是否存在
- 为服务创建专用目录:
services/{服务名}/ - 复制主NSSM文件到服务专用目录
- 使用服务专用的NSSM副本安装服务
- 保存服务配置(包含专用NSSM路径)
- 启动/停止/卸载服务都使用该服务专用的NSSM副本
- 确保每个服务的操作不会影响其他服务
- 使用服务专用的NSSM副本卸载服务
- 自动清理服务专用的NSSM副本文件
- 删除服务专用目录(如果为空)
- Fork 本仓库
- 新建 Feat_xxx 分支
- 提交代码
- 新建 Pull Request
- 在原有Jar包基础上,额外支持安装exe可执行文件安装为服务
- 支持浏览选择exe可执行文件
- 修复exe安装服务后启动服务错误问题
- 修复打包的exe缺少FlatIntelliJLaf样式类问题导致无法启动
重大更新
- 支持多服务管理功能
- 服务列表显示:以表格形式显示所有已安装的服务
- 批量操作:支持同时启动、停止、卸载多个服务
- 服务状态监控:实时显示每个服务的运行状态
- 配置持久化:自动保存和加载服务配置
-
安装成功后自动切换到"已安装服务列表"标签页
-
管理已安装服务
- 查看所有已安装的服务及其状态
- 选择要操作的服务(支持多选)
- 使用批量操作按钮:
- 刷新列表:更新服务状态
- 启动选中:启动选中的服务
- 停止选中:停止选中的服务
- 卸载选中:卸载选中的服务
- 优化界面布局结构
- 去除冗余功能(去除手动解压NSSM按钮,程序默认自动解压)
- 启动日志选择联动自定义路径是否可用功能
- 美化界面样式,支持idea窗口样式
- 增加程序任务栏图标和窗口图标
- 安装服务时默认先保存配置
- 优化代码结构
- 新增是否开启日志功能,如果未开启则不输出日志
- 新增自定义日志输出路径功能,如果未设置则默认输出到nssm路径下
- 新增exe应用图标
修复不输出日志的问题,默认输出日志和错误到nssm路径下



