Files
pqs-9100_client/doc/打包前检查清单.md
2025-12-16 10:21:38 +08:00

240 lines
5.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# NPQS9100 打包前检查清单
## ✅ 文件检查
### JRE 文件
- [ ] `build/extraResources/jre/bin/java.exe` 存在
- [ ] 运行 `java -version` 显示 1.8.0
### MySQL 文件(进程模式 - 绿色包)
- [ ] `mysql/bin/mysqld.exe` 存在
- [ ] `mysql/bin/mysql.exe` 存在(客户端工具)
- [ ] `mysql/bin/mysqladmin.exe` 存在(管理工具)
- [ ] ~~`mysql/data/` 目录已初始化~~(首次启动时自动初始化)
- [ ] MySQL root 密码已配置为 `njcnpqs`(在 config.default.js 中)
### Java 文件
- [ ] `build/extraResources/java/entrance.jar` 存在
- [ ] `build/extraResources/java/application.yml.template` 存在
### 脚本文件
- [ ] `scripts/port-checker.js` 存在
- [ ] `scripts/startup-manager.js` 存在
- [ ] `scripts/config-generator.js` 存在
- [ ] `scripts/mysql-service-manager.js` 存在
- [ ] `scripts/log-window-manager.js` 存在
- [ ] `scripts/java-runner.js` 存在
### HTML 文件
- [ ] `public/html/loading.html` 存在
### 配置文件
- [ ] `cmd/builder.json` 配置正确
- [ ] `electron/config/config.default.js` MySQL密码为 `njcnpqs`
- [ ] `electron/preload/lifecycle.js` 已更新
---
## ✅ 功能检查
### 端口检测
- [ ] 3306 端口检测功能正常
- [ ] 18092 端口检测功能正常
- [ ] 7777 WebSocket 端口检测功能正常
- [ ] 端口递增逻辑正确(被占用时自动+1
### MySQL 进程(绿色包 - 进程模式)
- [ ] MySQL 进程能正常启动(通过 spawn mysqld.exe
- [ ] ~~MySQL 服务配置为开机自启~~(已废弃,使用进程模式)
- [ ] MySQL 数据库首次启动时自动初始化
- [ ] MySQL 连接密码正确njcnpqs
- [ ] MySQL 进程随应用退出而自动关闭
- [ ] **无需管理员权限即可启动**
### Spring Boot 启动
- [ ] JAR 包能正常运行
- [ ] 配置文件能正确生成
- [ ] 能连接到 MySQL
### Loading 界面
- [ ] Loading 窗口能正常显示
- [ ] 进度条动画流畅
- [ ] 状态文字正确显示
- [ ] 端口和路径信息正确
---
## ✅ 打包步骤
### 1. 构建前端
```bash
cd frontend
npm install # 如果需要
npm run build
cd ..
```
**验证**: `frontend/dist/` 目录存在且有文件
### 2. 检查依赖
```bash
npm install # 确保所有依赖都安装
```
### 3. 执行打包
```bash
npm run build-w # 打包 Windows 便携版
```
### 4. 等待完成
- 打包时间:约 5-15 分钟
- 产物位置:`out/NPQS9100-win-x.x.x-x64.exe`
- 预期大小650-800 MB
---
## ✅ 打包后测试
### 基础测试(绿色包 - 进程模式)
- [ ] **无需管理员权限**,普通用户双击 exe 能正常启动 ✅
- [ ] Loading 界面正常显示,显示启动步骤
- [ ] ~~MySQL 服务自动安装并启动~~(已废弃)
- [ ] **MySQL 进程自动启动**(任务管理器可见 mysqld.exe
- [ ] ~~MySQL 服务配置为开机自启~~(已废弃,进程模式随应用启动)
- [ ] Spring Boot 自动启动(任务管理器可见 java.exe
- [ ] 主界面正常显示
- [ ] 应用退出后MySQL 和 Java 进程自动关闭 ✅
### 端口测试
- [ ] 手动占用 3306应用使用 3307
- [ ] 手动占用 18092应用使用 18093
- [ ] 端口信息在 Loading 界面正确显示
### 数据目录测试
- [ ] 数据目录自动创建在正确盘符
- [ ] 所有子目录都创建成功
- [ ] 配置文件路径正确
### 功能测试
- [ ] 前端功能正常
- [ ] 能连接到后端 API
- [ ] 数据库操作正常
### 关闭测试(绿色包 - 进程模式)
- [ ] 关闭应用正常
- [ ] Spring Boot 进程已停止(检查任务管理器)
- [ ] **MySQL 进程已停止**(检查任务管理器,不应残留 mysqld.exe
- [ ] ~~MySQL 服务继续运行~~(已废弃,新版本会自动清理进程)
### 移植测试
- [ ] 移动到其他目录能运行
- [ ] 在其他电脑上能运行
- [ ] 在不同盘符上能运行
---
## ✅ 日志检查
打包后运行一次,检查日志:
### 日志位置
```
C:\Users\[用户名]\AppData\Roaming\NQPS9100\logs\
├── 9100-YYYYMMDD.log # 应用日志
├── 9100-core-YYYYMMDD.log # 核心日志
└── 9100-error-YYYYMMDD.log # 错误日志
```
### 检查内容
- [ ] 端口检测日志正确
- [ ] MySQL 服务安装/启动日志正常
- [ ] 日志中显示"服务已配置为开机自启"
- [ ] Spring Boot 启动日志正常
- [ ] 无严重错误
---
## ✅ 性能检查
- [ ] 启动时间 < 30
- [ ] Loading 界面流畅
- [ ] 内存占用合理< 1GB
- [ ] CPU 占用正常
---
## ✅ 用户体验
- [ ] Loading 提示信息清晰
- [ ] 错误提示友好
- [ ] 无明显卡顿
- [ ] 界面美观
---
## 🐛 常见问题
### 打包失败
- 检查 Node.js 版本建议 16+
- 检查 npm 依赖是否完整
- 检查磁盘空间至少 5GB
### MySQL 进程失败(绿色包 - 进程模式)
- ~~检查是否以管理员身份运行~~不再需要)✅
- 检查 `mysql/bin/mysqld.exe` 是否存在
- 检查端口是否被占用应自动切换到其他端口
- 查看应用日志`%APPDATA%/NQPS9100/logs/9100.log`
- 查看 MySQL 错误日志`mysql/data/*.err`
- ~~使用 sc query mysql9100 检查服务状态~~已废弃不再使用服务
- 检查是否有残留的 mysqld.exe 进程任务管理器
### Spring Boot 启动失败
- 检查 JAR 包是否完整
- 检查 JRE 是否正确
- 检查 MySQL 是否已启动
---
## 📦 最终产物
```
out/
└── NPQS9100-win-x.x.x-x64.exe
运行后结构:
├── NPQS9100.exe
├── mysql/
├── jre/
├── java/
└── resources/
```
---
## 📝 分发清单
打包完成后准备
1. **安装包**
- `NPQS9100-win-x.x.x-x64.exe`
2. **用户文档**
- 使用说明
- 系统要求
- 常见问题
3. **技术文档**
- 部署说明
- 配置说明
- 故障排除
---
所有检查通过后即可分发
---
南京灿能电气自动化有限公司
2025-10-15