设置 Apache Tomcat JRE_HOME 而不设置环境变量

设置 Apache Tomcat JRE_HOME 而不设置环境变量

我有一台使用 Java 6 实现 Oracle 的服务器。但我想在其上安装 Tomcat Apache 服务器,但使用 Java 8。因此,为了不混淆系统环境,我想这样做:

-获取 Apache Tomcat 和 JRE/JDK 的 zip 格式。将它们解压到文件夹中并告诉我的 Apache Tomcar 使用该 JRE/JDK。

据我所知。我可以编辑 catalina.bat 文件中的 JAVA_HOME 和 JAVA_JRE,现在我正在笔记本电脑上尝试。我设置了 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?

答案1

无需修改catalina.bat。您可以通过在 Tomcat 安装脚本中设置变量来实现setenv。您似乎正在使用 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%照常使用系统全局变量。

setenvTomcat 文档,第 3.2 章

相关内容