Я пытаюсь сказать virtualenvwrapper использовать python3.4
вместо python2.7
, который отображается на python.
К сожалению virtualenvwrapper
игнорирует VIRTUALENVWRAPPER_PYTHON
и всегда использует python2.7
.
Я видел вопрос здесь
И ничто из упомянутого там не помогло мне.
Я установил все инструменты, используя pip3
[root@server]# pip3 install virtualenv setuptools virtualenvwrapper
Requirement already satisfied: virtualenv in /usr/lib/python3.4/site-packages (16.0.0)
Requirement already satisfied: setuptools in /usr/lib/python3.4/site-packages (40.5.0)
Requirement already satisfied: virtualenvwrapper in /usr/lib/python3.4/site-packages (4.8.2)
Requirement already satisfied: virtualenv-clone in /usr/lib/python3.4/site-packages (from virtualenvwrapper) (0.4.0)
Requirement already satisfied: stevedore in /usr/lib/python3.4/site-packages (from virtualenvwrapper) (1.29.0)
Requirement already satisfied: pbr!=2.1.0,>=2.0.0 in /usr/lib/python3.4/site-packages (from stevedore->virtualenvwrapper) (5.0.0)
Requirement already satisfied: six>=1.10.0 in /usr/lib/python3.4/site-packages (from stevedore->virtualenvwrapper) (1.11.0)
А не pip
:
[root@server]# pip uninstall virtualenvwrapper
Skipping virtualenvwrapper as it is not installed.
И я также установил env-переменные перед созданием venv:
[dakes@server .virtualenvs]$ export |grep -i virtual
declare -x VIRTUALENVWRAPPER_HOOK_DIR="/home/dakes/.virtualenvs"
declare -x VIRTUALENVWRAPPER_PROJECT_FILENAME=".project"
declare -x VIRTUALENVWRAPPER_PYTHON="/usr/bin/python3.4"
declare -x VIRTUALENVWRAPPER_SCRIPT="/usr/bin/virtualenvwrapper.sh"
declare -x VIRTUALENVWRAPPER_VIRTUALENV="/usr/local/bin/virtualenv"
declare -x VIRTUALENVWRAPPER_WORKON_CD="1"
declare -x WORKON_HOME="/home/dakes/.virtualenvs"
Но каждый раз, когда я создаю venv, он использует python2.7
, как вы можете видеть в строке 3:
[dakes@server ~]$ mkdir virtualenvtest
[dakes@server ~]$ mkvirtualenv test -a virtualenvtest/
New python executable in /home/dakes/.virtualenvs/test/bin/python2.7
Also creating executable in /home/dakes/.virtualenvs/test/bin/python
Installing setuptools, pip, wheel...done.
virtualenvwrapper.user_scripts creating /home/dakes/.virtualenvs/test/bin/predeactivate
virtualenvwrapper.user_scripts creating /home/dakes/.virtualenvs/test/bin/postdeactivate
virtualenvwrapper.user_scripts creating /home/dakes/.virtualenvs/test/bin/preactivate
virtualenvwrapper.user_scripts creating /home/dakes/.virtualenvs/test/bin/postactivate
virtualenvwrapper.user_scripts creating /home/dakes/.virtualenvs/test/bin/get_env_details
Setting project for test to /home/dakes/virtualenvtest
Что я делаю не так?
/ редактирование:
Я смог решить эту проблему, добавив
export VIRTUALENV_PYTHON=${VIRTUALENVWRAPPER_PYTHON}
на мой .bashrc