gpt4 book ai didi

python - 从另一个 virtualenv 创建一个 virtualenv

转载 作者:太空狗 更新时间:2023-10-29 20:55:42 28 4
gpt4 key购买 nike

我们可以创建一个 virtualenv 吗?从现有的 virtualenv 继承已安装的库?

详细说明:

我首先创建一个“引用”virtualenv,并添加库(固定版本):

virtualenv ref
source ref/bin/activate
pip install -U pip==8.1.1 # <- I want to fix the version number
pip install -U wheel==0.29.0 # <- I want to fix the version number

然后:

virtualenv -p ref/bin/python myapp
source myapp/bin/activate
pip list

我得到:

pip (1.4.1)
setuptools (0.9.8)
wsgiref (0.1.2)

如何获取我安装的库?

类似问题

我看到一个类似的问题:Can a virtualenv inherit from another? .

但我想要一个独立的 virtualenv,它不使用引用的 virtualenv,除了库安装。因此,将指定目录添加到当前事件的 virtualenv 的 Python 路径并不是解决方案。

为什么要这样做?

嗯,我们有一个构建应用程序(用于发布和持续集成)的集成服务器,我们希望保持对库版本的控制并加快构建速度。

创建可重定位的 virtualenv

我想我可以使用 relocatable virtualenv , 这样:

  1. 创建ref 虚拟环境
  2. 让它可重定位:``virtualenv --relocatable ref```

对于“我的应用程序”:

  • 复制refmyapp

您如何看待这个解决方案?可分发版本是否可靠?

最佳答案

您可以通过 using .pth files 解决您的问题.基本上你这样做:

virtualenv -p ref/bin/python myapp
realpath ref/lib/python3.6/site-packages > myapp/lib/python3.6/site-packages/base_venv.pth

执行此操作并激活 myapp 后,如果您运行 pip list,您应该也会看到来自 ref 的所有包。请注意,安装在 myapp 中的任何包都会对 ref 隐藏相应的包。

关于python - 从另一个 virtualenv 创建一个 virtualenv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39409380/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com