安装dotenv包时遭遇元数据生成错误求助
安装dotenv包时metadata-generation-failed错误的解决办法
问题原因
你安装的dotenv版本为0.0.5,是一个已废弃的老旧包,它依赖的distribute库与Python 3.11完全不兼容,触发AttributeError: 模块'importlib._bootstrap'没有属性'SourceFileLoader'错误,最终导致元数据生成失败。
解决方案
- 卸载已安装的旧版
dotenv(如果已安装):pip uninstall -y dotenv - 安装当前维护的标准环境变量管理包
python-dotenv:pip install python-dotenv
这个包是目前Python生态中用于加载.env文件的主流选择,完全支持Python 3.11及更高版本。
原始错误日志
正在收集dotenv 使用缓存的dotenv-0.0.5.tar.gz (2.4 kB) 准备元数据(setup.py): 已启动 准备元数据(setup.py): 完成,状态为'error' 错误: subprocess-exited-with-error python setup.py egg_info 执行失败。 退出码: 1 [77行输出] C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\setuptools\installer.py:27: SetuptoolsDeprecationWarning: setuptools.installer已被弃用。应使用PEP 517安装器满足依赖要求。 warnings.warn( 错误: subprocess-exited-with-error python setup.py egg_info 执行失败。 退出码: 1 [22行输出] 回溯(最近的调用最后): 文件"<string>", 第2行, 在<module>中 文件"<pip-setuptools-caller>", 第14行, 在<module>中 文件"C:\Users\naval\AppData\Local\Temp\pip-wheel-n1gnwdbh\distribute_5385a5f0f3b7409680c07cd450777e03\setuptools\__init__.py", 第2行, 在<module>中 from setuptools.extension import Extension, Library 文件"C:\Users\naval\AppData\Local\Temp\pip-wheel-n1gnwdbh\distribute_5385a5f0f3b7409680c07cd450777e03\setuptools\extension.py", 第5行, 在<module>中 from setuptools.dist import _get_unpatched 文件"<frozen importlib._bootstrap>", 第1176行, 在_find_and_load中 文件"<frozen importlib._bootstrap>", 第1147行, 在_find_and_load_unlocked中 文件"<frozen importlib._bootstrap>", 第690行, 在_load_unlocked中 文件"C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\_virtualenv.py", 第89行, 在exec_module中 old(module) 文件"C:\Users\naval\AppData\Local\Temp\pip-wheel-n1gnwdbh\distribute_5385a5f0f3b7409680c07cd450777e03\setuptools\dist.py", 第7行, 在<module>中 from setuptools.command.install import install 文件"C:\Users\naval\AppData\Local\Temp\pip-wheel-n1gnwdbh\distribute_5385a5f0f3b7409680c07cd450777e03\setuptools\command\__init__.py", 第8行, 在<module>中 from setuptools.command import install_scripts 文件"C:\Users\naval\AppData\Local\Temp\pip-wheel-n1gnwdbh\distribute_5385a5f0f3b7409680c07cd450777e03\setuptools\command\install_scripts.py", 第3行, 在<module>中 from pkg_resources import Distribution, PathMetadata, ensure_directory 文件"C:\Users\naval\AppData\Local\Temp\pip-wheel-n1gnwdbh\distribute_5385a5f0f3b7409680c07cd450777e03\pkg_resources.py", 第1518行, 在<module>中 register_loader_type(importlib_bootstrap.SourceFileLoader, DefaultProvider) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 模块'importlib._bootstrap'没有属性'SourceFileLoader' [输出结束] 注意: 此错误源自子进程,大概率不是pip的问题。 错误: metadata-generation-failed 生成包元数据时遭遇错误。 详见上方输出。 注意: 这是上述包的问题,而非pip的问题。 提示: 详见上方详情。 回溯(最近的调用最后): 文件"C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\setuptools\installer.py", 第82行, 在fetch_build_egg中 subprocess.check_call(cmd) 文件"C:\Users\naval\AppData\Local\Programs\Python\Python311\Lib\subprocess.py", 第413行, 在check_call中 raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: 命令'['C:\\\\Users\\\\naval\\\\OneDrive\\\\Desktop\\\\Learning Hub\\\\Python-BootCamp\\\\section 64\\\\day-64-starting-files-top-movies\\\\venv\\\\Scripts\\\\python.exe', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', 'C:\\\\Users\\\\naval\\\\AppData\\\\Local\\\\Temp\\\\tmp1fswpi90', '--quiet', 'distribute']'返回非零退出状态1。 上述异常直接导致以下异常: 回溯(最近的调用最后): 文件"<string>", 第2行, 在<module>中 文件"<pip-setuptools-caller>", 第34行, 在<module>中 文件"C:\Users\naval\AppData\Local\Temp\pip-install-2udsov2_\dotenv_a5dadefcebc54b9f95af1edad47b6fce\setup.py", 第13行, 在<module>中 setup(name='dotenv', 文件"C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\setuptools\__init__.py", 第86行, 在setup中 _install_setup_requires(attrs) 文件"C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\setuptools\__init__.py", 第80行, 在_install_setup_requires中 dist.fetch_build_eggs(dist.setup_requires) 文件"C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\setuptools\dist.py", 第875行, 在fetch_build_eggs中 resolved_dists = pkg_resources.working_set.resolve( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 文件"C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\pkg_resources\__init__.py", 第789行, 在resolve中 dist = best[req.key] = env.best_match( ^^^^^^^^^^^^^^^ 文件"C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\pkg_resources\__init__.py", 第1075行, 在best_match中 return self.obtain(req, installer) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 文件"C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\pkg_resources\__init__.py", 第1087行, 在obtain中 return installer(requirement) ^^^^^^^^^^^^^^^^^^^^^^ 文件"C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\setuptools\dist.py", 第945行, 在fetch_build_egg中 return fetch_build_egg(self, req) ^^^^^^^^^^^^^^^^^^^^^^^^^^ 文件"C:\Users\naval\OneDrive\Desktop\Learning Hub\Python-BootCamp\section 64\day-64-starting-files-top-movies\venv\Lib\site-packages\setuptools\installer.py", 第84行, 在fetch_build_egg中 raise DistutilsError(str(e)) from e distutils.errors.DistutilsError: 命令'['C:\\\\Users\\\\naval\\\\OneDrive\\\\Desktop\\\\Learning Hub\\\\Python-BootCamp\\\\section 64\\\\day-64-starting-files-top-movies\\\\venv\\\\Scripts\\\\python.exe', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', 'C:\\\\Users\\\\naval\\\\AppData\\\\Local\\\\Temp\\\\tmp1fswpi90', '--quiet', 'distribute']'返回非零退出状态1。 [输出结束] 注意: 此错误源自子进程,大概率不是pip的问题。 错误: metadata-generation-failed 生成包元数据时遭遇错误。 详见上方输出。 注意: 这是上述包的问题,而非pip的问题。 提示: 详见上方详情。
内容的提问来源于stack exchange,提问作者navalega0109
相关产品推荐
相关产品推荐

