Як встановити змінні середовища?


90

Я намагаюся налаштувати Apache Tomcat на свій ПК, і він хоче, щоб я створив змінну середовища для CATALINA_HOME. Хтось знає, як це зробити?

Відповіді:


100

У bash ви можете встановити такі змінні:

export CATALINA_HOME=/opt/catalina

більшість інших снарядів дотримуються цієї конвенції, але не всі. Ви можете встановити його назавжди ~/.profileдля bash (як і раніше, в інших оболонках є інші місця)


6
для змінних для всієї сесії help.ubuntu.com рекомендує ~/.profile, мабуть, найкращий файл для розміщення присвоєнь змінної середовища, оскільки він автоматично виконується DisplayManager під час сеансу настільного процесу запуску, а також оболонки входу при одному вході в систему. з текстової консолі.
Макдауелл

Оновлено відповідь. Причиною, чому я використав .bashrc замість цього, було те, що в якийсь момент .profile не з'явився автоматично. Але якщо він працює зараз, то краще використовувати його.
Рессу

6
Встановити це ~/.profileне працює для мене. Це працює в ~/.bashrcхоч.
jumpnett

Встановлення його також ~/.bash_profileпрацює.
jumpnett

Існує також системний файл у / etc. Це працює, але на кожного користувача.
звідки

26

Змінні середовища повинні вже працювати

Якщо ви використовуєте пакунок 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(ви не використовуєте команду експорту в цей файл, оскільки це не звичайний скрипт bash)

CATALINA_HOME=/path/to/the/root/folder/of/tomcat

Не рекомендовано

Ви можете встановити змінні середовища у файлах конфігурації bash (оболонки командного рядка), але вони не рекомендуються, оскільки вони не завжди підбираються (наприклад, якщо ви працюєте з сервером, на який не входите, щоб запустити tomcat): ~ / .bashrc | ~ / .профіль | /etc.bash.bashrc | / тощо / профіль


5
Це не повинні бути startupабо catalinaскрипти, а setenv.shабо setenv.batсценарій, створюючи його за потреби: "Крім CATALINA_HOME та CATALINA_BASE, всі змінні середовища можуть бути вказані в сценарії" setenv ". Сценарій розміщується або в CATALINA_BASE / bin, або в CATALINA_HOME / bin каталог і має ім'я setenv.bat (в Windows) або setenv.sh (на * nix). Файл повинен бути читабельним. " ( Запуск Apache Tomcat 7.0 Servlet / JSP контейнер , розділ 3.4)
Olathe

22

Щоб встановити постійні змінні середовища в останніх версіях 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/"

не забудьте знову вийти та увійти, щоб включити змінні середовища.


6

Найкраще місце для цього залежить від того, як і де ви встановили Tomcat, які додатки ви хочете отримати в цьому налаштуванні та наскільки глобальним ви хочете бути сферою.

Документація Ubuntu щодо змінних довкілля обговорює плюси і мінуси різних варіантів.


На що ви звертаєтесь, говорячи, "найкраще місце для цього"?
jumpnett

@jumpnett - я маю на увазі, де зробити налаштування стійким, щоб воно завжди було доступне для додатків залежно від нього. Якщо ви щасливі, не вводячи налаштування кожен раз або хочете написати власний сценарій.
Макдауелл

3
nano ~/.bashrc

Це, швидше за все, вже містить досить багато даних. Більшість визначень тут стосуються встановлення параметрів bash, які не пов'язані із змінними середовища. Ви можете встановити змінні середовища так само, як це було б з командного рядка:

export VARNAME=value

ПОСИЛАННЯ

Я протестував його на Ubuntu 16.04. Чудово працює.


1

Переглянувши документацію Ubuntu про змінні середовища, я придумав таке рішення:

##Save & run the following in a shell script,

export ENVIRON_VAR_NAME = Value
# any other initializations like
export PATH=$PWD:$PATH
bash

Останній рядок створює дочірню оболонку, яка успадковує значення змінної середовища від батьківської оболонки (які були щойно встановлені).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.