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

相关推荐
查无此人byebye14 小时前
【超详细解读(GPU)】基于DiT的MNIST扩散模型(DDPM)完整实现
python·深度学习·nlp·transformer·多分类
赵谨言14 小时前
基于Python和ArcPy的不动产数据入库技术与运用
大数据·开发语言·经验分享·python
MX_935914 小时前
Spring组件扫描原理解析
java·后端·spring
—Miss. Z—14 小时前
计算机软件资格考试—Python补充
开发语言·python
nimadan1214 小时前
**免费专业的小说创作软件2025推荐,解锁高效写作新体验*
人工智能·python
七夜zippoe14 小时前
PyTorch深度革命:从自动微分到企业级应用
人工智能·pytorch·python
好家伙VCC14 小时前
# 发散创新:基于ARCore的实时3D物体识别与交互开发实战 在增强现实(
java·python·3d·ar·交互
程序员良许15 小时前
防火墙和入侵测试
后端
明月_清风15 小时前
从 JS 到 C++/Rust:利用 N-API 构建 Node.js 高性能扩展的底层闭环
后端
明月_清风15 小时前
从“搬运工”到“指挥官”:通过 IoC 容器重塑你的后端思维
后端·nestjs