依赖解析 pip 虚拟环境

0 投票
1 回答
557 浏览
提问于 2025-04-17 03:22

我有两个本地库,它们依赖于不同版本的suds。

举个例子 -

  • Module-A-1.0的setup.py需要suds的版本是0.3.9。
  • Module-B-1.0的setup.py需要suds的版本是0.4.0。

这两个模块都被Module-C需要,而Module-C的setup.py里有以下内容:

  • django
  • Module-A-1.0
  • Module-B-1.0

Module-C会通过pip在一个虚拟环境中安装。我的问题是,最终会安装哪个版本的suds?我能在同一个虚拟环境中同时安装这两个版本吗?

我注意到,无论我在Module-C的setup.py中先指定哪个模块,那个版本的suds就会被安装。所以在这个例子中,如果我先写的是Module-A-1.0,就会安装suds 0.3.9。如果我把模块顺序换成:

  • django
  • Module-B-1.0
  • Module-A-1.0

那么安装的版本就是suds-0.4.0。

1 个回答

1

使用pip和virtualenv的话,你不能同时安装同一个库的两个版本。

而且,很遗憾,我不知道有什么好的方法来解决这个问题。抱歉。

撰写回答