# 打包为EXE文件说明 ## 前置要求 1. 确保已安装Python 3.7或更高版本 2. 安装项目依赖: ```bash pip install -r requirements.txt ``` ## 打包方法 ### 方法一:使用打包脚本(推荐) 直接运行打包脚本: ```bash python build_exe.py ``` ### 方法二:使用PyInstaller命令 使用spec文件打包: ```bash pyinstaller build_exe.spec ``` 或者直接使用命令行: ```bash pyinstaller --name=服装布料计算管理器 --onefile --windowed --add-data=fabric_library.db;. main.py ``` ### 方法三:使用spec文件(推荐用于自定义配置) ```bash pyinstaller build_exe.spec ``` ## 打包输出 打包完成后,生成的exe文件位于 `dist` 目录中: - `dist/服装布料计算管理器.exe` ## 注意事项 1. **数据库文件**:如果项目中有 `fabric_library.db` 文件,打包脚本会自动将其包含在exe同目录下。首次运行exe时,如果数据库不存在,程序会自动创建。 2. **文件大小**:打包后的exe文件可能较大(通常50-100MB),这是因为包含了Python解释器和所有依赖库。 3. **杀毒软件**:某些杀毒软件可能会误报,这是正常现象。PyInstaller打包的exe文件需要添加白名单。 4. **依赖库**:确保所有依赖都已正确安装,特别是PyQt5。 5. **测试**:打包完成后,建议在干净的Windows系统上测试exe文件是否能正常运行。 ## 常见问题 ### 问题1:打包失败,提示找不到模块 **解决方案**:在 `build_exe.spec` 的 `hiddenimports` 中添加缺失的模块。 ### 问题2:exe运行时缺少DLL文件 **解决方案**:确保PyQt5已正确安装,可以尝试重新安装: ```bash pip uninstall PyQt5 pip install PyQt5 ``` ### 问题3:exe文件太大 **解决方案**: - 使用 `--exclude-module` 排除不需要的模块 - 使用 `--onedir` 模式代替 `--onefile`(会生成一个文件夹而不是单个exe) ### 问题4:数据库路径问题 **解决方案**:程序已自动处理数据库路径,exe运行时会在exe同目录下查找或创建数据库文件。 ## 优化建议 1. **添加图标**:在 `build_exe.spec` 中设置 `icon='icon.ico'`,需要准备一个ico格式的图标文件。 2. **减小体积**:如果不需要某些功能,可以排除相关模块: ```python excludes=['matplotlib', 'numpy', 'pandas'] # 示例 ``` 3. **版本信息**:可以创建版本信息文件(.rc文件)并添加到spec配置中。