web-dev-qa-db-ja.com

環境変数を設定せずにApache Tomcat JRE_HOMEを設定する

Java 6を使用してOracleを実装したサーバーがあります。ただし、Tomcat ApacheサーバーをJava 8でインストールします。ここでシステム環境を混在させないようにしたいのですが:

-Apache TomcatとJRE/JDKをZip形式で取得します。それらをフォルダーに抽出し、そのJRE/JDKを使用するように私のApache Tomcarに指示します。

私の知る限り。 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%"

だから私の質問は全体です。システム環境変数で定義されていない別のルートからJRE_HOMEを使用するようにTomcatサーバーを設定する方法はありますか?

2
jajdp

catalina.batを変更する必要はありません。これは、Tomcatインストールのsetenvスクリプトに変数を設定することで実行できます。 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%およびシステムグローバル変数を使用します。

setenvについては、 Tomcatのドキュメントの3.2章に記載されています

2
Lenniey