pyinstaller -F 打包flask项目成exe文件报错
报错:
jinja2.exceptions.TemplateNotFound: template.html
按照平时打包python项目的方法win10下python代码打包成exe文件并作为服务后在后台运行,开机自启,却出现了jinja2.exceptions.TemplateNotFound: template.html的错误,但是打包之前代码也可以正常运行。
以为是flask项目中的templates文件夹的位置不对造成的错误,不管是把exe文件拖出来还是把templates拖到dist文件夹里面去,都无济于事。
然而,你的问题可能是由于flask版本和pyinstaller版本不对口的问题
可以进行如下操作:
1. 在cmd中cd到项目所在的文件夹里(我的是D:\PythonProject)。
2. 运行pyinstaller -D -p D:\PythonProject\build\site-packages main.py,这里D:\PythonProject\build\site-packages是项目的site-packages位置,main.py是需要打包的py文件。
注意:如果运行“pyinstaller -D -p D:\PythonProject\build\site-packages main.py”报错,则可以尝试运行“python -m PyInstaller -D -p D:\PythonProject\build\site-packages D:\PythonProject\数据分析\main.py”
3. 第2步运行好后,进入dist文件夹中的main文件夹(这个名字和你要打包的py文件相同),将flask项目的templates和static文件夹复制粘贴到main文件夹下,并将D:\PythonProject\build\site-packages中的flask整个文件夹完全复制粘贴到main文件夹下。
4. 接着运行dist文件夹中的main.exe文件就可以正常运行了。
本站文章主要用于个人学习记录,可能对您有所帮助,仅供参考!

