Столкнулся сегодня с маленькой неприятностью: в моём archlinux не работала утилита apache-ant. Как следствие, я просто не мог собирать проекты на Java из командной строки, а запускать каждый раз Eclipse(он имеет свою копию apache-ant), каждый раз как-то утомительно. Вместо процедуры сборки я получил сообщение "ant: command not found". Ясно, что установленный apache-ant просто не прописан в переменной $PATH. Что же делать? Как-то не хочется каждый раз выставлять её вручную.
Значит мы сами исправим положение. Редактируем файл /etc/profile.
sudo emacs -nw /etc/profile
И редактируем в нём запись:
# Set our default path PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/java/bin" export PATH
Добавляем к записи строку вида ":/usr/share/java/apache-ant/bin". Все пути в переменной разделяются через двоеточие. Получаем запись вроде этой:
# Set our default path PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/java/bin:/usr/share/java/apache-ant/bin" export PATH
И наконец, настало время применить внесённые нами в переменную:
source /etc/profile
Ну, вот теперь всё готово. У меня одно время не были установлены переменные для JRE и JDK, проблема решается так-же редактированием этой-же записи.
Полезные приёмы для работы с переменными в $PATH.
Узнаём содержимое переменной:
echo $PATH
Изменяем содержимое переменной PATH на лету:
PATH=$PATH:~/bin#наш новый путь, который мы добавляем в переменную идёт после двоеточия
Добавив строку подобного вида в файл ~/.bash_profile и использовав команду source, мы пропишем новый путь в переменную PATH только для нашего профиля(изменяя /etc/profile мы изменяем переменную на уровне всей системы).
Узнать путь, который надо добавить, можно простой командой
yaourt -Ql apache-ant
Выделяем из кучи каталогов нужный нам bin командой:
yaourt -Ql apache-ant|grep bin
Для написания заметки использовались сведения из следующих источников:
http://qa-room.com/ https://bbs.archlinux.org