pyinstall 打包Django程序

pyinstall 打包Django程序

基本流程

安装pyinstaller

bash 复制代码
pip install pyinstaller

生成.spec文件

在编辑器的虚拟环境中执行如下命令:

bash 复制代码
pyi-makespec -D manage.py

编辑manage.spec文件

在a = Analysis()的hiddenimports=[]列表中添加如下文件:

  • INSTALLED_APPS所有应用
  • MIDDLEWARE 中所有中间件
  • urls.py 中的所有url引用包
  • TEMPLATESlibraries下的所有包

生成.exe文件

执行如下命令,生成mannage.exe文件

bash 复制代码
pyinstaller manage.spec

模板文件和静态文件

复制模板templates文件夹和static文件夹到_internal

如果有其他外部文件也需要手工复制

运行命令

bash 复制代码
manage.exe runserver 0.0.0.0:8080 --noreload

说明:一定需要加上--noreload

常见错误

  • TypeError: expected str, bytes or os.PathLike object, not NoneType

    原因是不是每个应用中都有__init__.py文件,需要检查所有应用,添加上改文件,内容为空。

  • 启动服务时提示 No module named XXX

    需要配置.spec文件项目中的对应项目需要写入hiddenimports里面,提示缺少什么,添加上该模块,然后重新打包

  • RuntimeError: Script runserver does not exist.

    解决办法:只需在命令末尾加上 --noreload即可

相关推荐
落木萧萧8252 分钟前
从架构视角看 MyBatis Plus 的设计缺陷
后端
好运的阿财4 分钟前
OpenClaw四种角色详解
人工智能·python·程序人生·microsoft·开源·ai编程
买大橘子也用券6 分钟前
2026红明谷
python·web安全
Moment8 分钟前
AI全栈入门指南:使用 NestJs 创建第一个后端项目
前端·javascript·后端
李昊哲小课8 分钟前
Python办公自动化教程 - 第2章 单元格样式魔法 - 让表格变得美观专业
开发语言·python·excel·openpyxl
tryCbest8 分钟前
Pip生成requirements.txt文件
python·pip
希望永不加班9 分钟前
SpringBoot 定时任务:@Scheduled 基础与动态定时
java·spring boot·后端·spring
我叫黑大帅10 分钟前
如何设计应用层 ACK 来补充 TCP 的不足?
后端·面试·go
AIUCE12 分钟前
我给 AI 装了个"秦始皇":11 层架构解决 AI 黑箱问题
后端
SimonKing14 分钟前
每天白送4000万Token!这款“龙虾”AI神器,微信就能操控电脑
java·后端·程序员