提问人:J.A 提问时间:9/21/2023 最后编辑:J.A 更新时间:11/9/2023 访问量:41
PyInstaller (ImportError: cannot import name 'jwt' from 'jwcrypto') (已解决)
PyInstaller (ImportError: cannot import name 'jwt' from 'jwcrypto') (SOLVED)
问:
早上好。
我在 Python 3.7 中有一个应用程序,它使用多个具有以下结构的库和文件:
app2:
- Blockchain
- db
- secrets
- smartcontrats
- utils
- menu.py
此时,我的应用程序运行没有问题,我需要为 linux 生成一个可执行文件,但首先我想在一个文件夹中生成它,当这工作时,生成一个文件的可执行文件。我已经阅读了 PyInstaller 的手册并尝试了一些小例子来了解它是如何工作的。问题是当我尝试对我的应用程序做同样的事情时。
这是我用来生成它的命令:
pyinstaller --clean --noconfirm --onedir --log-level=ERROR “./menu.py” --add-data “./blockchain:blockchain/” --add-data “./db:db/” --add-data “./secrets:secrets/” --add-data “./smartcontracts:smartcontracts/” --add-data “./utils:utils/” --hidden-import uuid --hidden-import “web3” --hidden-import “sqlite3” --hidden-import “jwcrypto” --hidden-import “jwcrypto.jwk” --hidden-import “pydantic”
这将创建带有库的“dist”文件夹,没有错误的代码,当我执行“dist”文件夹中的“菜单”时,我遇到了下一个错误:
回溯(最近一次调用最后一次): 文件“app2/menu.py”,第 2 行,在 文件“/home/user/Desktop/app2/dist/menu/blockchain/canismajor.py”,第 9 行,在 来自区块链导入钱包 文件“/home/user/Desktop/app2/dist/menu/blockchain/wallet.py”,第 11 行,在 from jwcrypto import jwt, jwk, jws ImportError: cannot import name 'jwt' from 'jwcrypto'(/home/user/Desktop/app2/dist/menu/jwcrypto/init.pyc) [66099] 由于未处理的异常,无法执行脚本“menu”!
我已经重新安装了“jwt”,将其添加到“--hidden-import”,检查所有版本,但我无法修复错误并使其正常工作。
答: 暂无答案
评论