Maven 2 загадочно появляется в $ PATH

Я обновляюсь до maven 3, но наткнулся на небольшую загадку в том, что maven 2 загадочным образом обнаруживается в моей переменной PATH. Я проверил ~/.bashrc, ~/.profile, /etc/bash.bashrc, /etc/environment, /etc/profile и нигде не могу его найти. Чего мне не хватает?

1
задан 8 May 2015 в 04:22

1 ответ

Из man bash:

Когда bash вызывается как интерактивная оболочка входа в систему или как неинтерактивная оболочка с параметром --login, она сначала читает и выполняет ком- выполняется из файла / etc / profile, если этот файл существует. После прочтения этого файла он ищет ~ / .bash_profile, ~ / .bash_login и ~ / .profile в указанном порядке, а также читает и выполняет команды из первой, которая существует и доступна для чтения. Опция --noprofile может использоваться, когда оболочка запускается, чтобы запретить это поведение.

Когда запускается интерактивная оболочка, которая не является оболочкой входа в систему, bash читает и выполняет команды из /etc/bash.bashrc и ~ / .bashrc, если эти файлы существуют. Это может быть запрещено с помощью параметра --norc. Опция --rcfile file заставит bash читать и выполнять команды из файла вместо /etc/bash.bashrc и ~ / .bashrc.

Когда вы вошли в интерактивную оболочку без регистрации, файлы для поиска назначения PATH - это /etc/bash.bashrc, ~/.bashrc, а также в /etc/environment как место по умолчанию для объявления общесистемные переменные среды. Вы также должны проверить каталоги, которые получены при входе в интерактивную оболочку входа, чтобы убедиться, что в них нет ссылки или указателя для изменения PATH.

Если вы не найдете ссылки на PATH, имеющей maven-2, то в одном из этих файлов должно быть что-то, что вызывает изменение PATH, т.е. что-то в одном из этих файлов, что-то вызывает иначе это меняет PATH. Это очень трудно сказать, не проверяя содержимое файлов.

Если вы хотите удалить maven-2 из PATH:

/home/elpinguino/scala-2.10.5/bin:/home/elpinguino/bin:/usr/local/sbin
:/usr/loca‌​l/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
:/opt/apache-maven‌​-2.2.1/bin:/bin:/bin:/opt/apache-maven-3.3.3/bin 

Вы можете удалить каталог /opt/apache-maven‌​-2.2.1, чтобы PATH не нашел исполняемый файл, или объявить PATH ] переменная окружения снова отбрасывает каталог /opt/apache-maven‌​-2.2.1/bin и помещает его в конец ~/.bashrc.

0
ответ дан 8 May 2015 в 04:22

Другие вопросы по тегам:

Похожие вопросы: