196 lines
5.4 KiB
Markdown
Raw Normal View History

2025-09-09 10:41:27 +08:00
# 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**: 初始版本,支持基本打包和配置功能