【问题标题】:Getting pipenv working in a Virtualenv where the App is working让 pipenv 在应用程序工作的 Virtualenv 中工作
【发布时间】:2019-05-07 13:05:29
【问题描述】:

我的 Django 应用程序在 Virtualenv 中工作。 我想切换到 pipenv。但是, pipenv 安装失败并出现依赖错误。 鉴于该应用程序正在运行,我猜所有的库都在 Virtualenv 中。

当通过 Virtualenv + pip 让应用程序工作时,我必须解决库依赖关系,但能够并让它工作。迁移到 pipenv 背后的想法是避免多成员团队设置中的依赖问题。

有没有办法告诉 pipenv 只使用 virtualenv 中的库版本并继续使用它?

【问题讨论】:

    标签: pip virtualenv pipenv


    【解决方案1】:

    如果您有setup.py 文件,您可以使用pipenv install . 安装它。或者更好的是,使其成为可编辑的开发依赖项:pipenv install -e . --dev

    您还可以从 requirements.txt 文件创建 Pipfile/虚拟环境。所以你可以做一个 pip freeze ,然后从需求文件中安装。

    冻结您的依赖项

    从您的工作应用虚拟环境中,将您的依赖项导出到需求文件。

    pip freeze > frozen-reqs.txt

    然后使用 pipenv 创建一个新的虚拟环境,并从冻结的需求中安装。

    pipenv install -r frozen-reqs.txt

    然后进入Pipfile 并开始删除除顶级依赖项之外的所有内容,然后重新锁定。此外,尽可能避免固定需求,因为这会使依赖关系解析变得更加困难。

    您可以使用pipenv graphpipenv graph --reverse 来帮助解决这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-12
      • 1970-01-01
      相关资源
      最近更新 更多