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

PyInstaller打包main_program.exe时未纳入accessory_script.py的解决方法

解决Python脚本打包exe时附属依赖文件缺失的问题

以下是几种确保accessory_script.py被纳入可执行文件的方法:

  • 直接指定所有脚本打包
    运行PyInstaller时,把主脚本和附属脚本一起作为参数传入:

    pyinstaller main_program.py accessory_script.py
    

    这样PyInstaller会自动分析两个脚本的依赖,将它们都打包进最终的exe文件中。

  • 通过.spec文件手动配置隐藏导入
    如果自动识别失效,可通过生成配置文件手动添加依赖:

    1. 先生成初始的.spec文件:
      pyinstaller --name my_app main_program.py
      
    2. 打开生成的my_app.spec,在Analysis部分的hiddenimports列表中添加附属脚本名称:
      a = Analysis(
          ['main_program.py'],
          pathex=[],
          binaries=[],
          datas=[],
          hiddenimports=['accessory_script'],  # 添加该行
          hookspath=[],
          hooksconfig={},
          runtime_hooks=[],
          excludes=[],
          noarchive=False,
      )
      
    3. 基于修改后的.spec文件重新打包:
      pyinstaller my_app.spec
      
  • 检查导入方式的规范性
    确保main_program.py中对accessory_script.py的导入是静态的(如import accessory_script或from accessory_script import xxx)。如果使用了动态导入(如importlib.import_module),PyInstaller无法自动识别,必须通过hiddenimports手动声明依赖。

另外,打包时请确保虚拟环境venv已激活,且PyInstaller安装在该虚拟环境内,避免系统全局Python环境的干扰。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 17:52:10