Con*_*nor 27 python pip pipenv
安装 [numpy|opencv|pandas] 时,为什么我的 pipenv 卡在“锁定...”阶段?
运行时pipenv install pandas或pipenv update挂起很长时间,并显示一条消息和加载屏幕,表明它仍在锁定。为什么?我需要做什么?
Con*_*nor 50
也许更好的术语来描述这种状态是“构建和锁定......”或类似的东西。
如果您正在安装 numpy、opencv、pandas 或其他大型软件包,则特别有可能发生这种情况。
后台发生的事情pipenv是下载您的软件包并可能构建轮子。
在这种情况下,补救措施通常是给予足够的耐心。
要了解有关 pipenv 上下文中“锁定”的更多信息,您可以在此处阅读更多内容:https ://pipenv.kennethreitz.org/en/latest/basics/#pipenv-lock
$ pipenv lock 用于创建 Pipfile.lock,它声明项目的所有依赖项(和子依赖项)、它们的最新可用版本以及下载文件的当前哈希值。这确保了可重复的,最重要的是确定性的构建。
然而,有些时候,它是不是只是一个缓慢的/大的安装,但不是一个问题,你的Pipfile[.lock]。如果您相当确定这是问题pipenv lock --clear所在pipenv install,请尝试重新运行您的命令,还可以查看此线程以获取更多信息。
我刚才就遇到过这样的情况。Pipenv 永远陷入锁定状态,20 多分钟都看不到尽头,而且pipenv --rm没有任何帮助。
最后,问题是我已经运行pipenv install "boto3~=1.21.14"从boto3 = "==1.17.105". 但我还有其他相互冲突的要求(在我的例子中,botocore = "==1.20.105"和s3transfer = "==0.4.2"),它们是 boto3 依赖项。新版本的 boto3 需要这两个软件包的较新版本,但==要求不允许这样做。Pipenv 没有解释这一点,只是永远旋转“Locking\xe2\x80\xa6”。
因此,如果您遇到这种情况,我建议您仔细查看您的 Pipenv 软件包,看看是否存在任何明显的冲突,并尽可能放宽或删除软件包要求。
\n就我而言,我能够从列表中完全删除 s3transfer 和 botocore 软件包,并依靠 boto3 来获取必要的版本。
\n| 归档时间: |
|
| 查看次数: |
17139 次 |
| 最近记录: |