首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >错误“初始化virtualenvwrapper失败。”(WSL Windows 10)

错误“初始化virtualenvwrapper失败。”(WSL Windows 10)
EN

Stack Overflow用户
提问于 2021-06-08 15:55:43
回答 1查看 445关注 0票数 3

简介

在Windows10上的WSL (Wsman Shell commandLine,0.2.1版)中,我安装了pyenv,并尝试使用pyenv-virtualenvwrapper。然而,我似乎无法启动和运行它,甚至不能使用与我在Ubuntu - PC上使用的相同的.bashr.profile配置文件。

在接下来的内容中,我将描述我尝试过的内容。

检查pyenv

代码语言:javascript
运行
复制
username@hd1pcms0347:~$ pyenv
pyenv 1.2.26
Usage: pyenv <command> [<args>]

Some useful pyenv commands are:
   --version   Display the version of pyenv
   activate    Activate virtual environment
   commands    List all available pyenv commands
   deactivate   Deactivate virtual environment
   exec        Run an executable with the selected Python version
   global      Set or show the global Python version(s)
   help        Display help for a command
   hooks       List hook scripts for a given pyenv command
   init        Configure the shell environment for pyenv
   install     Install a Python version using python-build
   local       Set or show the local application-specific Python version(s)
   prefix      Display prefix for a Python version
   rehash      Rehash pyenv shims (run this after installing executables)
   root        Display the root directory where versions and shims are kept
   shell       Set or show the shell-specific Python version
   shims       List existing pyenv shims
   uninstall   Uninstall a specific Python version
   version     Show the current Python version(s) and its origin
   version-file   Detect the file that sets the current pyenv version
   version-name   Show the current Python version
   version-origin   Explain how the current Python version is set
   versions    List all Python versions available to pyenv
   virtualenv   Create a Python virtualenv using the pyenv-virtualenv plugin
   virtualenv-delete   Uninstall a specific Python virtualenv
   virtualenv-init   Configure the shell environment for pyenv-virtualenv
   virtualenv-prefix   Display real_prefix for a Python virtualenv version
   virtualenvs   List all Python virtualenvs found in `$PYENV_ROOT/versions/*'.
   virtualenvwrapper   Setup virtualenvwrapper into current shell.
   virtualenvwrapper_lazy   Setup virtualenvwrapper_lazy into current shell.
   whence      List all Python versions that contain the given executable
   which       Display the full path to an executable

See `pyenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/pyenv/pyenv#readme

尝试按照上面选项中列出的方式运行pyenv virtualenvwrapper

代码语言:javascript
运行
复制
username@hd1pcms0347:~$ pyenv virtualenvwrapper

Failed to initialize virtualenvwrapper.

Perhaps pyenv-virtualenvwrapper has not been loaded into your shell properly.
Please restart current shell and try again.

username@hd1pcms0347:~$ virtualenvwrapper
virtualenvwrapper: command not found
username@hd1pcms0347:~$ which virtualenvwrapper
username@hd1pcms0347:~$

通过pip安装virtualenvwrapper

代码语言:javascript
运行
复制
username@hd1pcms0347:~$ pip install virtualenvwrapper
Collecting virtualenvwrapper
  Using cached virtualenvwrapper-4.8.4-py2.py3-none-any.whl
Collecting stevedore
  Using cached stevedore-3.3.0-py3-none-any.whl (49 kB)
Collecting virtualenv
  Using cached virtualenv-20.4.7-py2.py3-none-any.whl (7.2 MB)
Collecting virtualenv-clone
  Using cached virtualenv_clone-0.5.4-py2.py3-none-any.whl (6.6 kB)
Collecting pbr!=2.1.0,>=2.0.0
  Using cached pbr-5.6.0-py2.py3-none-any.whl (111 kB)
Collecting six<2,>=1.9.0
  Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting appdirs<2,>=1.4.3
  Using cached appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)
Collecting distlib<1,>=0.3.1
  Using cached distlib-0.3.2-py2.py3-none-any.whl (338 kB)
Collecting filelock<4,>=3.0.0
  Using cached filelock-3.0.12-py3-none-any.whl (7.6 kB)
Installing collected packages: six, pbr, filelock, distlib, appdirs, virtualenv-clone, virtualenv, stevedore, virtualenvwrapper
Successfully installed appdirs-1.4.4 distlib-0.3.2 filelock-3.0.12 pbr-5.6.0 six-1.16.0 stevedore-3.3.0 virtualenv-20.4.7 virtualenv-clone-0.5.4 virtualenvwrapper-4.8.4

如果工作正常,请再次检查

代码语言:javascript
运行
复制
username@hd1pcms0347:~$ virtualenvwrapper
virtualenvwrapper: command not found
username@hd1pcms0347:~$ pyenv virtualenvwrappr
pyenv: no such command `virtualenvwrappr'
username@hd1pcms0347:~$ pyenv virtualenvwrapper

Failed to initialize virtualenvwrapper.

Perhaps pyenv-virtualenvwrapper has not been loaded into your shell properly.
Please restart current shell and try again.

username@hd1pcms0347:~$ pyenv-virtualenvwrapper

Failed to initialize virtualenvwrapper.

Perhaps pyenv-virtualenvwrapper has not been loaded into your shell properly.
Please restart current shell and try again.

username@hd1pcms0347:~$ pyenv global
3.9.4
username@hd1pcms0347:~$ pyenv local
pyenv: no local version configured for this directory

按照前面提到的步骤,尝试从github页面重新安装pyenv-virtualenvwrapper

代码语言:javascript
运行
复制
username@hd1pcms0347:~$ $ git clone https://github.com/pyenv/pyenv-virtualenvwrapper.git $(pyenv root)/plugins/pyenv-virtualenvwrapper
$: command not found
username@hd1pcms0347:~$ git clone https://github.com/pyenv/pyenv-virtualenvwrapper.git $(pyenv root)/plugins/pyenv
-virtualenvwrapper
fatal: destination path '/home/username/.pyenv/plugins/pyenv-virtualenvwrapper' already exists and is not an empty directory.
username@hd1pcms0347:~$ export PYENV_VIRTUALENVWRAPPER_PREFER_PYVENV="true"
username@hd1pcms0347:~$ pyenv virtualenvwrapper

Failed to initialize virtualenvwrapper.

Perhaps pyenv-virtualenvwrapper has not been loaded into your shell properly.
Please restart current shell and try again.

username@hd1pcms0347:~$ virtualenvwrapper
virtualenvwrapper: command not found

检查可执行文件的位置

代码语言:javascript
运行
复制
username@hd1pcms0347:~$ ls -R /home/username/.pyenv/plugins/pyenv-virtualenvwrapper
/home/username/.pyenv/plugins/pyenv-virtualenvwrapper:
LICENSE  README.md  bin  install.sh  shims  test

/home/username/.pyenv/plugins/pyenv-virtualenvwrapper/bin:
pyenv-sh-virtualenvwrapper  pyenv-sh-virtualenvwrapper_lazy  pyenv-virtualenvwrapper  pyenv-virtualenvwrapper_lazy

/home/username/.pyenv/plugins/pyenv-virtualenvwrapper/shims:
deactivate

/home/username/.pyenv/plugins/pyenv-virtualenvwrapper/test:
command.bats    pyvenv.bats  stubs             tmp         version.bats       virtualenvwrapper.bats
installer.bats  setup.bats   test_helper.bash  unset.bats  virtualenvwrapper  virtualenvwrapper_lazy.bats

/home/username/.pyenv/plugins/pyenv-virtualenvwrapper/test/stubs:
stub

/home/username/.pyenv/plugins/pyenv-virtualenvwrapper/test/tmp:

/home/username/.pyenv/plugins/pyenv-virtualenvwrapper/test/virtualenvwrapper:
virtualenvwrapper.sh  virtualenvwrapper_lazy.sh

尝试执行感兴趣的脚本"virtualenvwrapper.sh“

代码语言:javascript
运行
复制
username@hd1pcms0347:~$ ./home/username/.pyenv/plugins/pyenv-virtualenvwrapper/test/virtualenvwrapper/virtualenvwrapper.sh
-bash: ./home/username/.pyenv/plugins/pyenv-virtualenvwrapper/test/virtualenvwrapper/virtualenvwrapper.sh: No such file or directory
username@hd1pcms0347:~$ bash /home/username/.pyenv/plugins/pyenv-virtualenvwrapper/test/virtualenvwrapper/vi
rtualenvwrapper.sh
virtualenvwrapper.sh is loaded
username@hd1pcms0347:~$ virtualenvwrapper
virtualenvwrapper: command not found
username@hd1pcms0347:~$ pyenv virtualenvwrapper

Failed to initialize virtualenvwrapper.

Perhaps pyenv-virtualenvwrapper has not been loaded into your shell properly.
Please restart current shell and try again.

我不知道还能做些什么来让它工作。坦率地说,在每一个其他的Ubuntu/Linux发行版上,这个pyenvvirtualenvwrapper应用程序都会出现不同的问题,这也是令人震惊的。一般来说,当它们工作时,它们是很棒的,但设置它们往往是一件痛苦的事情。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-19 07:01:12

当我在我的mac上(在BigSur 11.5.1上的bash shell上)设置virtualenvwrapper时,我遇到了同样的错误。最后我解决了这个问题:在安装pyenv和virtualenvwrapper之后,你的~/.bashrc应该是这样的:

代码语言:javascript
运行
复制
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"

export PYENV_VIRTUALENVWRAPPER_PREFER_PYVENV="true"
export WORKON_HOME=$HOME/.virtualenvs

eval "$(pyenv init -)"
pyenv virtualenvwrapper_lazy

然后是source ~/.bashrc

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67883577

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档