我有一台使用 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%
照常使用系统全局变量。
setenv
在Tomcat 文档,第 3.2 章