问题描述
我正在使用 pipenv
来处理 Python 包依赖项.
I am using pipenv
to handle Python package dependencies.
Python 包正在使用两个包(名为 pckg1
和 pckg2
),它们依赖于同一个名为 pckg3
的包,但是来自两个不同的版本.显示依赖树:
The Python package is using two packages (named pckg1
and pckg2
) that rely on the same package named pckg3
, but from two different versions. Showing the dependency tree :
$ pipenv graph
pckg1==3.0.0
- pckg3 [required: >=4.1.0]
pckg2==1.0.2
- pckg3 [required: ==4.0.11]
尝试安装依赖项:
$ pipenv install
Warning: Your dependencies could not be resolved. You likely have a mismatch in your sub-dependencies.
You can use $ pipenv install --skip-lock to bypass this mechanism, then run $ pipenv graph to inspect the situation.
Hint: try $ pipenv lock --pre if it is a pre-release dependency.
Could not find a version that matches pckg3==4.0.11,==4.1.0,>=4.1.0 (from -r C:UsersuserAppDataLocalTemppipenv-o7uxm080-requirementspipenv-hwekv7dc-constraints.txt (line 2))
Tried: 3.3.1, 3.3.2, 3.3.3, 3.4.0, 3.4.2, 4.0.0, 4.0.0, 4.0.1, 4.0.1, 4.0.2, 4.0.2, 4.0.3, 4.0.3, 4.0.4, 4.0.4, 4.0.6, 4.0.6, 4.0.8, 4.0.8, 4.0.9, 4.0.9, 4.0.10, 4.0.10, 4.0.11, 4.0.11, 4.1.0, 4.1.0, 4.1.1, 4.1.1, 4.1.2, 4.1.2, 4.2.1, 4.2.1, 4.3.0, 4.3.0
There are incompatible versions in the resolved dependencies.
按照建议,pip install --skip-lock
可以解决问题,但依赖关系树仍未解决.
As suggested, pip install --skip-lock
does the trick, but the dependency tree is still unresolved.
我很想告诉 Pipev
覆盖 pckg2
的要求,并指定 pckg3>=4.1.0
.
I would love to tell Pipenv
to override pckg2
's requirement, and specify pckg3>=4.1.0
.
如何解决?
推荐答案
我经常收到这个错误.每次清除锁定文件中的缓存都很有效.
I get that error constantly. Clearing the cache in the lock file works beautifully every time.
$ pipenv lock --pre --clear
这篇关于如何使用 pipenv 解决 Python 包依赖关系?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!