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

相关推荐
一 乐9 分钟前
办公系统|基于springboot + vueOA办公管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·spring
Tony Bai13 分钟前
Go 1.26 新特性前瞻:从 Green Tea GC 到语法糖 new(expr),性能与体验的双重进化
开发语言·后端·golang
我一定会有钱16 分钟前
pytest基础
python·测试工具·测试用例·pytest
资源站shanxueit或com24 分钟前
Python入门教程:从零到实战的保姆级指南(避坑大全) 原创
后端
越千年26 分钟前
工作中常用到的二进制运算
后端·go
转转技术团队29 分钟前
转转大数据与AI——数据治理安全打标实践
大数据·人工智能·后端
利刃大大33 分钟前
【SpringBoot】SpringMVC && 请求注解详解 && 响应注解详解 && Lombok
java·spring boot·后端
Hi~晴天大圣34 分钟前
if 变量和if not 变量用法之布尔真假值规则
python·if
老歌老听老掉牙34 分钟前
Vericut 5轴机床MCH文件解析与构建指南
xml·python·vericut
梨子同志39 分钟前
Java 介绍与开发环境安装
后端