`Какой питон` после активации virtualenv по-прежнему показывает путь non-virtualenv - PullRequest
0 голосов
/ 22 марта 2019

Я следовал за ответами на вопрос , перечисленный здесь , но все еще не могу решить свою проблему.

У меня есть виртуальная среда для python 2.7 в / var / www / app / env, и после ее активации он по-прежнему показывает тот же запущенный python, который был до того, как я активировал среду. Для обоих результат для which python:

/usr/bin/python но я бы хотел, чтобы это было /var/www/app/env/bin/python

Какие изменения необходимо внести, чтобы это происходило каждый раз, когда я активирую свою среду?

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ

Это на RHEL 4.8 и Python 2.7.2. Мой .bashrc файл находится ниже:

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# Uncomment the following line if you don't like systemctl's auto-paging feature
:
# export SYSTEMD_PAGER=

# User specific aliases and functions
source /var/www/app/env/bin/activate

Нет другого файла профиля.

При активированной виртуальной среде echo $PATH выдает:

/var/www/app/env/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ec2-user/.local/bin:/home/ec2-user/bin

При деактивированном, echo $PATH выводит следующее:

/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin

UPDATE Я выполнил следующие шаги, но изменений не было:

В файл activate для виртуальной среды добавлено следующее:

export PYTHONPATH="/var/www/dwm/dwmenv/bin/python"                                 
export OLD_PYTHONPATH="$PYTHONPATH" 

Добавлено следующее к функции deactivate() в том же файле

export PYTHONPATH="$OLD_PYTHONPATH"

Деактивировал среду и снова активировал ее, но без изменений!

1 Ответ

0 голосов
/ 22 марта 2019

Проблема была очень простой. Питон в папке окружения bin не имеет разрешений на выполнение для владельца и группы. Я добавил эти разрешения, и теперь он может работать правильно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...