You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyInstaller打包含matplotlib的Python程序运行时ModuleNotFoundError如何解决?

解决PyInstaller打包后matplotlib模块找不到的问题
  • 激活正确的开发环境再打包
    打包前一定要激活安装了matplotlib的那个虚拟环境,比如用venv\Scripts\activate(venv环境)或者conda activate your_env(conda环境),确保当前环境里能正常import matplotlib,再执行PyInstaller命令。

  • 显式指定matplotlib为隐藏依赖
    PyInstaller偶尔会漏检某些库的依赖,打包时用--hidden-import参数强制把matplotlib加入打包列表,命令示例:

    pyinstaller --hidden-import matplotlib main.py
    

    如果还有子模块找不到的情况,可以追加更多参数,比如:

    pyinstaller --hidden-import matplotlib --hidden-import matplotlib.pyplot main.py
    
  • 用.spec文件手动配置依赖

    1. 先生成.spec文件:pyinstaller main.py
    2. 打开生成的main.spec文件,找到hiddenimports字段,添加matplotlib相关模块:
      hiddenimports=['matplotlib', 'matplotlib.pyplot', 'matplotlib.backends.backend_agg']
      
    3. 用.spec文件重新打包:pyinstaller main.spec
  • 手动添加matplotlib的安装路径
    先通过命令找到matplotlib的安装路径:

    python -c "import matplotlib; print(matplotlib.__file__)"
    

    然后打包时用--add-data参数(Windows下路径用分号分隔)把整个matplotlib目录加入打包:

    pyinstaller --add-data "C:\实际路径\matplotlib;matplotlib" main.py
    
  • 清理旧打包文件重新构建
    删除dist、build文件夹和生成的.spec文件,从头重新执行打包命令,避免旧缓存文件导致的依赖问题。

内容的提问来源于stack exchange,提问作者Chris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 22:07:35