Pipenv 警告:无效要求,“'--extra-'”处的解析错误

Pipenv WARNING: Invalid requirement, parse error at "'--extra-'"

我有一个使用 pipenv 的项目。我有一个 pipfile 和一个 pipfile.lock。我正在将此存储库部署到远程 Ubuntu 服务器。

当 运行 这个命令:pipenv install --python /usr/bin/python3.6 我得到这个输出:

$ pipenv install --python /usr/bin/python3.6
Virtualenv already exists!
Removing existing virtualenv…
Creating a virtualenv for this project…
Using /usr/bin/python3.6 (3.6.4) to create virtualenv…
⠋Running virtualenv with interpreter /usr/bin/python3.6
Using base prefix '/usr'
New python executable in /root/.local/share/virtualenvs/me-fqgDIQ7T/bin/python3.6
Also creating executable in /root/.local/share/virtualenvs/me-fqgDIQ7T/bin/python
Installing setuptools, pip, wheel...done.

Virtualenv location: /root/.local/share/virtualenvs/me-fqgDIQ7T
Installing dependencies from Pipfile.lock (2d6b0e)…
An error occurred while installing boto==2.48.0! Will try again.
...
An error occurred while installing pynacl==1.2.1! Will try again.
WARNING: Invalid requirement, parse error at "'--extra-'"
ABORTING INSTALL... You will have to reinstall any packages that failed to install.
You may have to manually run pipenv lock when you are finished.
     ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 32/45 — 00:00:08

单词 "extra" 没有出现在我的 pipfilepipfile.lock 中。

我在这方面没有取得任何进展;我什至不知道下一步该看哪里。

我该如何进一步调查并弄清楚它想告诉我什么?

更新:

pipenv 有一个 --verbose 标志;这导致注意到它只在一个来源中搜索每个包,并且由于我们的私人仓库列在第一位,所以它没有找到 public 包。一些谷歌搜索表明这是 pipenv 和 pip 之间发生的一些奇怪的事情,在我看来,我在上面看到的警告来自 pip 不理解 pipenv 如何告诉它在多个来源中查找依赖项。

无论哪种方式,通过从 pipfile 中删除我们的私有源,情况都会有所改善; ofc,这只是意味着它是 我们的 无法安装的软件包...

这最终成为一个系统与另一个系统之间 pip 的版本控制问题;我不记得有关问题如何发生或为何发生或此解决方案为何有效的确切细节,但我们 "solved" 通过显式使用 pipenv 版本 9.0.1

来解决此问题