一、前言
一般来讲,直接使用
pyinstaller -F -w main.py
就可以直接打包成exe,并可正常使用了。
但是,当我导入了一个pyd包之后,一切就不正常了,报错找不到模块,下面以我的bluetooth模块找不为例:
二、报错信息如下
ModuleNotFoundError: No module named ‘bluetooth’
三、问题解决
方法一:命令法
在原基础上添加,执行以下指令
pyinstaller -F -w main.py --hidden-import bluetooth
打包完成之后的exe就不报错并正常使用了。
如果你有其他包也不正常使用,直接添加到后面即可。
如:
pyinstaller -F -w main.py --hidden-import bluetooth --hidden-import test
方法2:spec文件法
初次使用pyinstaller时,会在使用目录下新建一个xxxx.spec 文件,打开该文件会有很多参数配置
将需要导入的模块们,加到hiddenimports= 后面的[ ]口袋里
注意写成字符串的形式,如:
之后执行命令:
pyinstaller -F main.spec
大功告成!!!