2017-08-08 102 views
2

我运行:无法激活的virtualenv与pyenv

pyenv activate new_app 

我也得到:

Failed to activate virtualenv. 

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

我想按照这个教程:https://tutorials.technology/tutorials/59-Start-a-flask-project-from-zero-building-api-rest.html

其他信息:

bash-3.2$ python --version 
Python 3.6.0 

bash-3.2$ pyenv version 
3.6.0 (set by /Users/me/Projects/flask_api/.python-version) 

bash-3.2$ pwd 
/Users/me/Projects/flask_api 

bash-3.2$ pyenv versions 
    system 
    3.5.1 
    3.5.1/envs/my_env_3_5_1 
* 3.6.0 (set by /Users/me/Projects/flask_api/.python-version) 
    3.6.0/envs/new_app 
    flask_app 
    my_env_3_5_1 
    new_app 

bash-3.2$ virtualenv --version 
15.1.0 

bash-3.2$ pyenv virtualenvs 
3.5.1/envs/my_env_3_5_1 (created from /Users/me/.pyenv/versions/3.5.1) 
    3.6.0/envs/new_app (created from /Users/me/.pyenv/versions/3.6.0) 
    flask_app (created from /System/Library/Frameworks/Python.framework/Versions/2.7) 
    my_env_3_5_1 (created from /Users/me/.pyenv/versions/3.5.1) 
    new_app (created from /Users/me/.pyenv/versions/3.6.0) 

我重新cently让我.bash_profile它包含:

bash-3.2$ cat ~/.bash_profile 
eval "$(pyenv init -)" 
eval "$(pyenv virtualenv-init -)" 
exec "$SHELL" 
if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi 

我应该怎么做才能正常启动的virtualenv?

回答

3

eval "$(pyenv init -)" 
eval "$(pyenv virtualenv-init -)" 

应该是.bashrc,不.bash_profile。后者仅由登录炮弹执行,前者由所有交互式炮弹执行。