繁体   English   中英

Pyenv virtualenv没有激活,尝试了我所知道的一切

[英]Pyenv virtualenv not activating, tried everything I know

如果有人可以帮助我解决这个问题,那就太好了。 目前,我已经尝试了过去几天的所有方法,以使其无法正常工作。 我已经使用pyenv和插件virtualenv大约一个月了,没有任何问题。 有一天,我醒来后发现无法激活pyenv创建的virtualenv。 源bin / activate停止工作。 从重新安装pyenv到重新安装Kubuntu并重试均未成功,我做了一切。 我不知道怎么了。 从下图可以看到,我没有任何错误。 据我了解,每次我激活virtualenv时,它都会在控制台中以我的名字显示,而不再显示该名称。 我确保添加“ echo'eval“ $(pyenv virtualenv-init-)”'>>〜/ .bashrc”以及所有其他需要的东西。 pyenv可用的所有其他选项仍然可以正常工作,这仅是激活我的virtualenv。 请帮忙。 谢谢

“激活”后的外观图片

这也让我有些了解,特别是因为我之前使用virtualenvwrapper管理我的virtualenv。 有用的是,我浏览了该函数并看到了以下内容:

  if [[ "$(pyenv version-name)" == "system" ]]; then
    pyenv deactivate || true
  elif [[ "$VIRTUAL_ENV" != "$(pyenv prefix)" ]]; then
    pyenv deactivate || true
    pyenv activate 2>/dev/null || true
  fi

没有涵盖的是,当您在pyenv中创建virtualenv时,它会显示为一个版本。 所以当你这样做

pyenv versions

您将获得虚拟环境中的python列表。 为了使其正常工作,它结合了旧功能和新功能。 你可以做:

user@server [00:00:00] [~]
-> % cd Development/test
user@server [00:00:00] [~/Development/test]
-> % pyenv shell test
(test)user@server [00:00:00] [~/Development/test]
-> %

或自动:

user@server [00:00:00] [~]
-> % cd Development/test
user@server [00:00:00] [~/Development/test]
-> % pyenv local test
(test)user@server [00:00:00] [~/Development/test]
-> %

这会删除带有python版本的.python-version文件,pyenv会将其读取并用作virtualenv python。

只要记住要像pyenv的python版本一样管理您的virtualenv,就应该可以保持顺畅。 例如,要自动禁用,只需更改目录。 如果您使用pyenv shell,则需要pyenv shell --unset或pyenv shell {another_version}才能移动virtualenv。

希望这可以帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM