2025-09-09 10:41:27 +08:00

196 lines
5.4 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.

# VWED任务系统打包模块
此模块提供了将VWED任务系统打包为Windows可执行文件的完整解决方案包含动态配置功能。
## 🎯 推荐使用方式
**集成版本(推荐)**: 配置界面 + 服务启动合二为一,用户体验最佳!
```bash
cd packaging/scripts
build_integrated.bat
```
## 目录结构
```
packaging/
├── config_tool/ # 配置工具
│ ├── config_manager.py # GUI配置管理器
│ ├── integrated_config_gui.py # 集成配置GUI界面
│ └── startup_loader.py # 启动配置加载器
├── scripts/ # 构建脚本
│ ├── build_integrated.bat # 🌟 集成版构建脚本(推荐)
│ ├── build.py # Python构建脚本
│ ├── build.bat # 分离版构建脚本
│ └── test_integrated.bat # 集成版测试脚本
├── resources/ # 资源文件
│ └── README.md # 资源说明
├── integrated_launcher.py # 🌟 集成启动器(推荐)
├── vwed_integrated.spec # 🌟 集成版PyInstaller配置
├── main_with_config.py # 带配置加载的主程序入口
├── vwed_task_main.spec # 主程序PyInstaller配置
├── vwed_config_tool.spec # 配置工具PyInstaller配置
├── requirements_build.txt # 打包依赖
└── README.md # 本文件
```
## ✨ 功能特性
### 🎉 集成版本特点(推荐)
- **一键启动**: 单个exe文件包含配置界面和服务启动
- **智能配置**: 首次启动显示配置界面,后续直接启动服务
- **无缝体验**: 配置完成后自动关闭配置窗口,直接进入服务
- **自动保存**: 配置自动保存,无需重复设置
### 1. 动态配置管理
- **GUI配置工具**: 提供友好的图形界面配置数据库连接和API地址
- **配置文件管理**: 自动保存/加载配置到 `config.ini` 文件
- **环境变量注入**: 启动时自动设置环境变量
- **配置验证**: 支持数据库连接测试
### 2. 可配置项
- **数据库配置**:
- `username`: MySQL用户名
- `password`: MySQL密码
- `host`: MySQL主机地址
- **API配置**:
- `tf_api_base_url`: TF API基础URL
### 3. 打包输出
**集成版本(推荐)**:
- **VWED_Task_System.exe** - 包含配置界面和服务的单一可执行文件
- **启动VWED任务系统.bat** - 便捷启动脚本
- **使用说明.txt** - 详细使用指南
**分离版本**:
- **vwed_task_main.exe** - 核心任务系统服务
- **vwed_config_tool.exe** - GUI配置管理器
- **启动脚本** - 便捷的批处理启动脚本
## 使用方法
### 方法一:自动化构建(推荐)
1. **运行自动化构建**:
```bash
cd packaging/scripts
build.bat
```
2. **等待构建完成**,输出位于 `dist/VWED_Task_Release/`
### 方法二:手动构建
1. **安装打包依赖**:
```bash
pip install -r packaging/requirements_build.txt
```
2. **构建主程序**:
```bash
pyinstaller --clean packaging/vwed_task_main.spec
```
3. **构建配置工具**:
```bash
pyinstaller --clean packaging/vwed_config_tool.spec
```
4. **手动创建发布包**:
```bash
python packaging/scripts/build.py
```
### 方法三:快速构建
```bash
cd packaging/scripts
quick_build.bat
```
## 部署使用
构建完成后在目标Windows服务器上
1. **复制发布包** `VWED_Task_Release` 到目标位置
2. **首次配置**:
- 双击 `启动配置工具.bat`
- 设置数据库连接参数
- 设置API地址
- 测试连接并保存配置
3. **启动服务**:
- 在配置工具中点击"启动服务",或
- 双击 `直接启动服务.bat`
4. **访问系统**:
- 浏览器访问 `http://localhost:8000`
- API文档: `http://localhost:8000/docs`
5. **停止服务**:
- 双击 `停止服务.bat`
## 配置文件格式
系统使用 `config.ini` 文件存储配置:
```ini
[database]
username = root
password = root
host = localhost
[api]
tf_api_base_url = http://111.231.146.230:4080/jeecg-boot
```
## 环境变量映射
配置文件中的值会自动映射为环境变量:
- `database.username` → `DB_USER`
- `database.password` → `DB_PASSWORD`
- `database.host` → `DB_HOST`
- `api.tf_api_base_url` → `TF_API_BASE_URL`
## 故障排除
### 常见问题
1. **构建失败**:
- 确保Python环境正确安装
- 检查依赖是否完整安装
- 查看构建日志确定具体错误
2. **配置工具无法启动**:
- 确保目标系统支持tkinter
- 检查权限设置
3. **主程序启动失败**:
- 检查数据库连接配置
- 确保MySQL服务已启动
- 查看应用日志
### 调试模式
如需调试,可以修改 `vwed_task_main.spec` 中的 `console=True` 以显示控制台输出。
## 技术细节
### 打包技术栈
- **PyInstaller**: Python应用打包
- **tkinter**: GUI配置界面
- **configparser**: 配置文件管理
- **pathlib**: 路径处理
- **subprocess**: 进程管理
### 架构设计
- **配置分离**: 运行时配置与代码分离
- **模块化**: 配置工具与主程序独立
- **热加载**: 支持运行时配置更新
- **错误处理**: 完善的异常处理和用户提示
## 版本历史
- **v1.0**: 初始版本,支持基本打包和配置功能