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

使用PyInstaller打包Python项目失败,提示streamlit包元数据未找到

使用PyInstaller打包Python项目失败,提示streamlit包元数据未找到

看起来你遇到的是PyInstaller打包时无法识别streamlit包元数据的问题,我之前也碰到过类似的情况,给你几个可行的解决思路:

1. 先确认环境依赖是否正确安装

首先确保你是在项目对应的虚拟环境里操作的,有时候不同环境的包会有冲突。先激活你的虚拟环境,然后重新安装最新版的streamlit和PyInstaller:

pip install --upgrade streamlit pyinstaller

安装完成后再尝试打包,大概率能解决元数据识别的问题。

2. 手动指定PyInstaller的隐藏导入参数

如果上面的方法没用,可能是PyInstaller自动分析依赖时漏掉了streamlit的元数据模块。可以在打包命令里加上--hidden-import或者--collect-all参数,强制收集streamlit的所有相关文件:

  • 方法一:指定隐藏导入
pyinstaller --hidden-import streamlit --hidden-import importlib.metadata main.py
  • 方法二:直接收集整个streamlit包(更彻底)
pyinstaller --collect-all streamlit main.py

这个参数会让PyInstaller把streamlit的所有文件都打包进去,包括元数据文件,应该能解决找不到包元数据的错误。

3. 尝试降级到稳定版的streamlit

有时候新版本的streamlit和PyInstaller会有兼容性问题,你可以试试降级到一个经过验证的稳定版本,比如1.32.0版本:

pip install streamlit==1.32.0

安装完成后再重新打包,看看问题是否消失。

另外,打包完成后,记得检查生成的dist目录里的可执行文件,运行时如果还有其他依赖问题,继续用--hidden-import补充对应的模块就行。


你的原始错误信息如下,方便其他开发者参考:

Traceback (most recent call last):
File "importlib/metadata/init.py", line 407, in from_name
StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "main.py", line 5, in
File "PyInstaller/loader/pyimod02_importers.py", line 384, in exec_module
File "streamlit/init.py", line 63, in
File "PyInstaller/loader/pyimod02_importers.py", line 384, in exec_module
File "streamlit/version.py", line 18, in
File "importlib/metadata/init.py", line 987, in version
File "importlib/metadata/init.py", line 960, in distribution
File "importlib/metadata/init.py", line 409, in from_name
importlib.metadata.PackageNotFoundError: No package metadata was found for streamlit
[PYI-46881:ERROR] Failed to execute script 'main' due to unhandled exception!

Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.

[Proces voltooid]

备注:内容来源于stack exchange,提问作者W_Surenbroek

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.14 16:53:06