一尘不染

使用pip安装软件包的多个版本

python

在我的应用程序中,我想使用:

  • packageA,这需要 packageX==1.3
  • packageB,这需要 packageX==1.4
  • packageX==1.5

如何安装packageX带有pip的多个版本来处理这种情况?


阅读 155

收藏
2020-12-20

共1个答案

一尘不染

点不会帮助您。

您可以告诉它安装特定版本,但是它将覆盖另一个版本。另一方面,使用两个virtualenvs将使您在同一台计算机上安装两个版本,但不能同时使用它们。

最好的选择是手动安装这两个版本,方法是将它们以不同的名称放在Python路径中。

但是,如果您的两个库期望它们具有相同的名称(并且应该相同),则必须对其进行修改,以便它们使用一些导入别名来选择所需的版本,例如:

import dependencyname_version as dependencyname

当前尚无干净的方法来执行此操作。您所希望的最好的办法就是使这种黑客能够正常工作。

我宁愿放弃两个库之一,而用一个等效库替换它,或者修补它以接受新版本的依赖项并将修补程序返回给社区。

2020-12-20