Назад | Перейти на главную страницу

Установка Apache Tomcat JRE_HOME без установки переменной среды

У меня есть сервер, который использует Java 6 для реализации Oracle. Но я хочу установить на нем Tomcat Apache Server, но с Java 8. Итак, чтобы не смешивать системную среду, вот что я хочу сделать:

-Получите Apache Tomcat и JRE / JDK в виде ZIP-форматов. Распакуйте их в папку и скажите моему Apache Tomcar использовать этот JRE / JDK.

НАСКОЛЬКО МНЕ ИЗВЕСТНО. Я могу редактировать JAVA_HOME и JAVA_JRE в файле catalina.bat, и сейчас я пробую это на ноутбуке. Я установил свой файл catalina.bat, но когда я пытаюсь запустить сервер apache через командную строку, я получаю сообщение «Ни переменные среды JAVA_HOME, ни JRE_HOME не определены (...)»

Это мой файл catalina.bat после того, как я его отредактировал.

echo Using CATALINA_BASE:   "%CATALINA_BASE%"
echo Using CATALINA_HOME:   "%CATALINA_HOME%"
echo Using CATALINA_TMPDIR: "%CATALINA_TMPDIR%"
if ""%1"" == ""debug"" goto use_jdk
echo Using JRE_HOME:        "D:\ANDRES\Descargas\apache-tomcat-8.5.43-windows-x64\jre1.8.0_221\"
goto java_dir_displayed
:use_jdk
echo Using JAVA_HOME:       "D:\ANDRES\Descargas\apache-tomcat-8.5.43-windows-x64\jdk1.8.0_221\"
:java_dir_displayed
echo Using CLASSPATH:       "%CLASSPATH%"

Итак, мой вопрос в целом такой. Есть ли способ настроить сервер Tomcat для использования JRE_HOME с другого маршрута, который не определен в переменных системной среды?

Нет необходимости изменять catalina.bat. Вы можете сделать это, установив переменные в setenv сценарий вашей установки Tomcat. Похоже, вы используете Windows, поэтому вот пример setenv.bat изменить JRE_HOME и JAVA_HOME.

Создайте файл %CATALINA_BASE%\bin\setenv.bat со следующим содержанием:

set "JRE_HOME=D:\ANDRES\Descargas\apache-tomcat-8.5.43-windows-x64\jre1.8.0_221"
set "JAVA_HOME=D:\ANDRES\Descargas\apache-tomcat-8.5.43-windows-x64\jdk1.8.0_221"
exit /b 0

Таким образом, изменение переменных затронет только Tomcat, все остальные процессы используют %PATH% и системные глобальные переменные, как всегда.

setenv описывается в Документы Tomcat, глава 3.2