Как мне установить переменные среды?
Я пытаюсь настроить Apache Tomcat на моем компьютере, и он хочет, чтобы я установил переменную среды для CATALINA_HOME
, Кто-нибудь знает, как это сделать?
7 ответов
В bash вы можете установить переменные следующим образом:
export CATALINA_HOME=/opt/catalina
большинство других оболочек следуют этому соглашению, но не все. Вы можете установить его навсегда в ~/.profile
для Bash (и, как и раньше, другие оболочки имеют другие места)
Чтобы установить постоянные переменные среды в последних версиях Ubuntu (от 14.04 и выше), добавьте переменные в /etc/environment
, Для этого следуйте приведенным ниже инструкциям,
Откройте терминал и запустите
sudo -H gedit /etc/environment
введите свой пароль, затем в текстовом файле подсказки
затем добавьте переменные как
ANT_HOME="/opt/ANT/"
Образец /etc/environment
дается ниже
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
JAVA_HOME="/usr/lib/jvm/java-8-oracle/"
AXIS2_HOME="/opt/axis2-1.7.4/"
ANT_HOME="/opt/apache-ant-1.9.7/"
не забудьте выйти и войти снова, чтобы включить переменные среды.
Переменные среды уже должны работать
Если вы используете пакет tomcat6 из репозиториев Ubuntu, то CATALINA_HOME и другие переменные окружения уже установлены в /etc/init.d/tomcat6
Скрипт запуска.
Если вы устанавливаете tomcat вне диспетчера пакетов (возможно, в /opt или где-то еще за пределами управляемой файловой системы), тогда запустите TOMCAT/bin/startup.sh
следует использовать относительное местоположение для определения CATALINA_HOME.
Установка переменной среды
Если по какой-то причине вам все еще нужно установить переменную окружения, вы можете открыть окно терминала и ввести команду:
export CATALINA_HOME=/path/to/the/root/folder/of/tomcat
Эта переменная окружения теперь будет работать в этом окне терминала, но если вы откроете другое окно или выйдете из системы / войдите в систему, вы потеряете эту настройку.
Сделать переменную среды постоянной
Чтобы сделать настройку переменной среды постоянной, есть несколько мест, где вы можете определить настройку.
Чтобы быть уверенным, что настройка выбрана, добавьте вышеуказанную настройку в один из сценариев запуска tomcat:
yourtomcatfolder/bin/startup.sh
yourtomcatfolder/bin/catalina.sh
Примечание: startup.sh вызывает catalina.sh. Вы должны добавить настройки в начале одного из этих файлов (после любых начальных комментариев)
Стандартным способом для глобальных переменных среды будет добавление записи в /etc/environment
(вы не используете команду export в этом файле, так как это не обычный скрипт bash)
CATALINA_HOME=/path/to/the/root/folder/of/tomcat
Не рекомендуется
Вы можете установить переменные окружения в конфигурационных файлах bash (оболочки командной строки), но это не рекомендуется, так как они не всегда подхватываются (например, если вы используете сервер, на который вы не входили, чтобы запустить tomcat): ~/.bashrc | ~/.profile | /etc.bash.bashrc | / И т.д. / профиль
nano ~/.bashrc
Скорее всего, это будет содержать довольно много данных уже. Большинство определений здесь предназначены для настройки параметров bash, которые не связаны с переменными среды. Вы можете установить переменные окружения так же, как и в командной строке:
export VARNAME=value
Я проверил это на Ubuntu 16.04. Работает отлично.
Лучшее место для этого зависит от того, как и где вы установили Tomcat, какие приложения вы хотите выбрать для этого параметра и насколько глобально вы хотите охватить.
В документации Ubuntu по переменным среды обсуждаются плюсы и минусы различных вариантов.
Изучив документацию по переменным окружения в Ubuntu, я нашел следующий способ:
##Save & run the following in a shell script,
export ENVIRON_VAR_NAME = Value
# any other initializations like
export PATH=$PWD:$PATH
bash
Последняя строка создает дочернюю оболочку, которая наследует значения переменной среды от родительской оболочки (которые только что были установлены).
Как и выше, я буду использовать экспорт для сохранения переменной окружения с небольшой разницей. Я предпочитаю сохранять их в локальном файле.
echo "export POSTMARK_SERVER_TOKEN=sekritvalue" >> .env
Таким образом, в любое время и с любого терминала ваша переменная будет работать и присутствовать в вашем проекте. Не забудьте включить .env в свой .gitignore, НЕ передавайте их в Git.