python-3.x Pip找不到元数据文件-环境错误

dm7nw8vv  于 2023-02-10  发布在  Python
关注(0)|答案(8)|浏览(310)

每当我在Ubuntu 16.04中运行pip来安装像virtualenv这样的Flask包时,我会收到这个错误:
pip install virtualenv
Requirement already satisfied: virtualenv in ./.local/lib/python3.5/site-packages (16.1.0) No metadata found in ./.local/lib/python3.5/site-packages Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: '/usr/.local/lib/python3.5/site-packages/virtualenv-16.1.0.dist-info/METADATA'
以下是我的pip和python版本:
pip --version pip 19.0.1 from /usr/.local/lib/python3.5/site-packages/pip (python 3.5)
python3 --version Python 3.6.8
我已经尝试了几乎所有我从互联网上得到解决这个问题,如:
/usr/.local/bin/pip install virtualenv
但我还是得到了同样的错误。
我还进入了dist文件夹以使用METADATA复制metadata.json,但里面没有metadata.json文件。
x1米7英寸x1米8英寸
cp: cannot stat 'metadata.json': No such file or directory
请帮帮我,我被这个问题困扰了好几天。谢谢!

x9ybnkn6

x9ybnkn61#

我遇到了同样的问题

ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: '/root/anaconda3/lib/python3.6/site-packages/tornado-6.0.4.dist-info/METADATA

那么我cd /root/anaconda3/lib/python3.6/site-packages/tornado-6.0.4.dist-info/ && ls

DESCRIPTION.rst  LICENSE.txt  metadata.json

最后,我做了cp metadata.json METADATA解决了这个问题。也许这对你有帮助。

vawmfj5a

vawmfj5a2#

我最近遇到了同样的问题。

Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: '~/.local/lib/python3.7/site-packages/pip-19.0.1.dist-info/METADATA'

在文件夹中

~/.local/lib/python3.7/site-packages/pip-19.0.1.dist-info/

我找到了另一个名为pip-19.0.1.dist-info的文件,最后一个文件包含pip所需的所有文件。
我刚刚用了

cd ~/.local/lib/python3.7/site-packages/pip-19.0.1.dist-info/
cp -r ./pip-19.0.1.dist-info/* ./
rm -r ./pip-19.0.1.dist-info

显然,你需要更换python版本与自己的,也检查文件

entry_points.txt  INSTALLER  LICENSE.txt  METADATA  RECORD  top_level.txt  WHEEL

都在这里。
也许它能帮到你,幸运。

gwo2fgha

gwo2fgha3#

我只是在使用Python 3.6.5和pip 19.2.3的另一个软件包中遇到了这个问题。我对使用这里的解决方案(以及类似的SO问题)犹豫不决,所以我只是尝试了以下方法,它解决了这个问题:
pip install --force-reinstall package_with_metadata_issue
注意,我的案例是抱怨black包,它依赖于我试图安装的其他东西(用一个简单的pip install other_package),Black已经安装并在我的系统上工作了一段时间,所以不清楚它是如何进入坏状态的,也不清楚pip中发生了什么变化,以至于它不能处理包的状态。
具体而言,业务主任可尝试:
pip install --force-reinstall virtualenv
虽然看起来这里的许多其他人对pip本身有意见,所以这可能只是在pip处于良好状态之前踢jar。

j9per5c4

j9per5c44#

我认为错误的根源在于pip配置为使用Python3.5(并在其特定的Pythonpath中查找元数据),而Python版本是3.6.8
在我看来,通过使用内置的venv,Python 3中的虚拟环境已经变得更简单了。另外,Python和Flask的版本应该一致,这是这里的情况,而不是这样。
我建议你采取以下步骤

python3 -m venv /path/to/new/virtual/environment

  • 通过以下方式激活虚拟环境
cd /path/to/new/virtual/environment
source env/bin/activate

现在您有了一个孤立的、全新的环境,其中只有一个Python版本。

  • 运行pip install --upgrade pip将虚拟环境pip升级到与Python版本兼容的版本。
  • 运行pip install flask,从头开始安装整个堆栈,以便库和Python可执行版本保持一致。
mwngjboj

mwngjboj5#

我得到了相同的错误

Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: '/home/vagrant/.local/lib/python3.7/site-packages/pip-18.1.dist-info/RECORD'

似乎/usr/bin/pip和/home/vagrant/. local/lib/python3.7/之间存在冲突。
我的解决办法是避免错误。

  • pip冻结〉要求. txt
  • 我删除了/home/user/. local/lib/python3.7目录
  • sudo pip安装--升级pip
  • pip安装-r要求. txt--用户
  • 修好了
mjqavswn

mjqavswn6#

conda install -c conda-forge requests解决了我的问题,当然你需要重新安装对你有问题的包,用pip重新安装对我不起作用。

y3bcpkx1

y3bcpkx17#

如果你使用python,就用"pip安装cython",如果你使用python3,就用"pip3安装cython"。我尝试了很多不同的方法,最后这个方法对我有效。
检查您的实际错误消息,我的错误消息是"注意:此错误源于子进程,可能不是pip. error的问题:旧版安装失败
×尝试安装软件包时遇到错误。─〉cytoolz "

ygya80vv

ygya80vv8#

试试这个,

!pip install cython

以及

!pip install --force-reinstall virtualenv

为我工作。
我在colab也遇到过同样的问题

相关问题