【问题标题】:dependency resolution pip virtualenv依赖解析 pip virtualenv
【发布时间】:2011-11-27 21:40:08
【问题描述】:

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

示例 -

  • Module-A-1.0 的 setup.py 要求 suds ==0.3.9。
  • Module-B-1.0 的 setup.py 要求 suds ==0.4.0。

Module-C 需要这两个模块,它的 setup.py 如下

  • django
  • 模块-A-1.0
  • 模块-B-1.0

Module-C 将使用 pip 安装在 virtualenv 中。 我的问题是要安装哪个版本的 suds,我可以将两个版本都安装在同一个虚拟环境中吗?

我注意到的是,无论我在 setup.py 中首先为 Module-C 指定哪个模块,都会安装该版本的 suds。所以在这种情况下 suds 0.3.9。如果我将模块切换到

  • django
  • 模块-B-1.0
  • 模块-A-1.0

安装在 suds-0.4.0 中的 suds 版本。

【问题讨论】:

    标签: python dependencies virtualenv pip


    【解决方案1】:

    使用 pip + virtualenv 你不能同时安装两个版本的库。

    而且,不幸的是,我不知道有什么好的方法可以处理这种情况。对不起。

    【讨论】:

    • 谢谢大卫。那么这是否意味着安装哪个版本的 suds 取决于 setup.py 中的放置顺序?我来到了 maven 世界,如果存在 2 个不同版本的库,将选择最新的库。这里不也是这样吗?
    • 是的,你是对的——它将是最后安装的。您可以通过运行pip freeze | grep sudspython 然后import suds; suds.__version__ 来检查。
    • 没问题。在某些时候,您应该通过单击左侧向上/向下箭头下的复选标记来接受我的回答,并可能也投赞成票。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-08
    • 2011-06-27
    • 2011-07-07
    • 1970-01-01
    相关资源
    最近更新 更多