Tomcat

在不設置環境變數的情況下設置 Apache Tomcat JRE_HOME

  • July 17, 2019

我有一台使用 Java 6 進行 Oracle 實現的伺服器。但是我想在它上面安裝一個 Tomcat Apache 伺服器,但是使用 Java 8。所以為了不混合系統環境,這就是我想要做的:

  • 以 zip 格式獲取 Apache Tomcat 和 JRE/JDK。將它們提取到一個文件夾中並告訴我的 Apache Tomcar 使用該 JRE/JDK。

AFAIK。我可以在 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?

無需修改catalina.bat。您可以通過在setenvTomcat 安裝腳本中設置變數來做到這一點。您似乎使用的是 Windows,所以這裡是一個setenv.bat更改JRE_HOMEJAVA_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 章中進行了描述

引用自:https://serverfault.com/questions/975528