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

Kivy/KivyMD应用venv运行正常,打包exe后点击列表项崩溃如何解决

问题解决方法

方案1:修改PyInstaller打包配置(推荐,无需修改第三方包源码)

直接在现有pyinstaller.spec文件中添加scanpy相关资源的打包规则即可,操作步骤如下:

  • 执行pip show scanpy,从输出的Location字段获取scanpy的安装根路径
  • 打开项目根目录的pyinstaller.spec文件,找到datas配置项,新增如下规则(原有资源配置保持不变):
datas = [
    # 你原来的其他资源配置
    # 新增scanpy资源配置,<scanpy安装路径>替换为上一步获取的实际路径
    ("<scanpy安装路径>/scanpy/pyproject.toml", "scanpy"),
    ("<scanpy安装路径>/scanpy/_dist_init_.py", "scanpy"),
    ("<scanpy安装路径>/scanpy-*.dist-info", "scanpy.dist-info"),
]

Windows环境下路径分隔符可以用/或者转义后的\\。

  • 修改完成后重新执行打包命令:
    python -m PyInstaller .\pyinstaller.spec

方案2:修改scanpy源码临时绕过(适合快速测试)

如果仅需临时验证功能,可以直接修改scanpy的源码跳过文件读取逻辑:

  • 找到scanpy安装目录下的_metadata.py文件
  • 注释掉原有读取pyproject.toml的代码段,直接硬编码你当前安装的scanpy版本号即可,示例如下:
# 注释掉原来的文件读取逻辑
# from pathlib import Path
# __version__ = Path(__file__).parent.joinpath("pyproject.toml").read_text()...
# 直接写死对应版本号,比如你安装的是1.9.3版本就写下面这句
__version__ = "1.9.3"

修改完成后重新打包即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 13:15:04