python - Python:可执行文件未正确运行
问题描述
从 python 项目pyinstaller
成功构建文件的正确命令是什么。.exe
我已经尝试过以下命令,但不适用于我的情况。
Project
|--->main.py
|--->second.py
|--->images (folder)
|--->image.jpg
以上是我的项目结构。我已经发出main.py
命令了pyinstaller
。
pyinstaller --noconfirm --onedir "main.py" --console --log-level "DEBUG" --add-data "images/image.jpg;." --add-data "second.py;."
Exe 是从上面的行生成的,也可以运行,但是当它调用 second.py 时,它会显示错误modules not found
。由于两个 python 文件都使用相同的模块。
我也尝试过使用virtualenv
并给出它的路径。
pyinstaller --noconfirm --onedir "main.py" --console --log-level "DEBUG" --add-data "images/image.jpg;." --add-data "second.py;." --paths "venv/Lib/site-packages" --paths "venv/Lib"
这甚至不运行exe。
解决方案
删除 --add-data "second.py;." 从你的构建命令。如果您的 second.py 脚本被导入到您的 main 中,那么 pyinstaller 会找到它。--add-data 用于数据,而不是程序。
推荐阅读
- reactjs - 如何在本机反应中获取文本输入的文本?
- python - 基于另一个系列或 PeriodIndex 的重采样或 groupby 聚合
- rust - 如何解决预期的`:`,找到关键字`self`?
- c++ - 如何在类型未知的类中拥有通用向量
- python - 不明白为什么我不断收到“无法分配给操作员”错误
- react-native - react-native FlastList 无法滚动到最后
- web-scraping - 我如何使用带有splash的scrapy从javascript.void(0)中获取链接?
- google-apps-script - App Maker Document 审批模板:添加默认审批者并自动通知所有者状态
- javascript - 如何将 AdonisJS 部署到 IIS 服务器?
- javascript - 打开另一个按钮时折叠菜单