处理打包中的ModuleNotFoundError: No module named ‘_cffi_backend‘

背景:

在python项目中引入paramiko库后打包。

问题:

  • 运行exe提示:ModuleNotFoundError: No module named ‘_cffi_backend‘

    解决方式:在本地的python目录下,找到_cffi_backend.cp38-win_amd64.pyd,复制到打包的根目录下。重新运行exe文件。(类似的引入其他库后初始化异常处理方式一样)

  • 运行exe,发现由于引入的nacl库初始化异常。

 File "D:\work\boradxt\pythonProject\deviceSet0.04\main\paramiko\__init__.py", line 22, in <module>
    from paramiko.transport import SecurityOptions, Transport
  File "D:\work\boradxt\pythonProject\deviceSet0.04\main\paramiko\transport.py", line 90, in <module>
    from paramiko.ed25519key import Ed25519Key
  File "D:\work\boradxt\pythonProject\deviceSet0.04\main\paramiko\ed25519key.py", line 22, in <module>
    import nacl.signing
  File "D:\work\boradxt\pythonProject\deviceSet0.04\main\nacl\signing.py", line 17, in <module>
    import nacl.bindings
  File "D:\work\boradxt\pythonProject\deviceSet0.04\main\nacl\bindings\__init__.py", line 17, in <module>
    from nacl.bindings.crypto_aead import (
  File "D:\work\boradxt\pythonProject\deviceSet0.04\main\nacl\bindings\crypto_aead.py", line 18, in <module>
    from nacl._sodium import ffi, lib
SystemError: initialization of _sodium did not return an extension module

解决方案:
在本地的python目录下,找到_cffi_backend.cp38-win_amd64.pyd,复制到打包的根目录下。重新运行exe文件。(类似的引入其他库后初始化异常处理方式一样)
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值