由于需要虚拟环境中各种依赖的库,在其他电脑开启本地服务,所以将Django项目进行打包,以下是各种步骤以及出错的处理
- 安装pyinstall
我在使用pip安装pyinstall的时候,会出现大量的红字错误,只需要按照下面的指令一个个执行就好了
pip install pywin32;
pip install wheel
pip install -U setuptools
pip install pyinstaller
- 开始打包
执行下面两条指令,其中执行第一条后会生成一个spec文件,先不用管,等会会进行修改。第二条就是开始使用pyinstaller打包的指令
pyi-makespec -D manage.py
pyinstaller manage.spec
在执行过程中,可能会出现Import Error,注意是可能在打包而不是执行的时候出现,网上大多都是说执行exe时会出现。而这里出现,他并没有说明缺的是哪个包,这个时候就要将控制台往上翻,就会翻到类似这个的错误
Import Error:No module named XXX
然后我显示缺失的包名是我Django项目中的其中一个App名,而我将app都放在了apps文件夹中,并在settings文件夹中设置了目录,导致pyinstall找不到。
解决办法就是将app都移到主目录上,settings注释掉设置目录的代码即可,操作并不复杂,之后再次执行上面那两句打包指令
pyi-makespec -D manage.py
pyinstaller manage.spec
<