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即可

相关推荐
一人の梅雨6 分钟前
1688 店铺商品全量采集与智能分析:从接口调用到供应链数据挖掘
开发语言·python·php
间彧21 分钟前
Java单例模式:饿汉式与懒汉式实现详解
后端
道可到22 分钟前
百度面试真题 Java 面试通关笔记 04 |JMM 与 Happens-Before并发正确性的基石(面试可复述版)
java·后端·面试
Terio_my37 分钟前
Python制作12306查票工具:从零构建铁路购票信息查询系统
开发语言·python·microsoft
Ray6638 分钟前
guide-rpc-framework笔记
后端
37手游后端团队40 分钟前
Claude Code Review:让AI审核更懂你的代码
人工智能·后端·ai编程
万粉变现经纪人1 小时前
如何解决 pip install -r requirements.txt 约束文件 constraints.txt 仅允许固定版本(未锁定报错)问题
开发语言·python·r语言·django·beautifulsoup·pandas·pip
站大爷IP1 小时前
Python定时任务实战:APScheduler从入门到精通
python
长安不见1 小时前
解锁网络性能优化利器HTTP/2C
后端
LSTM971 小时前
使用Python对PDF进行拆分与合并
后端