私はApache Tomcatの変数の違いを調べようとしていました -CATALINA_OPTS
そしてJAVA_OPTS
それでそして、ここにまだ質問/回答が投稿されていないことに驚きました。そこで、違いがわかった後、ここで(回答とともに)共有しようと思いました。以下の回答/違いを確認してください。
注記:この記事の執筆時点では、CentOS5 64 ビット アーキテクチャ上で JDK 6u32 を搭載した Apache Tomcat v6.0.10 を実行しています。
ベストアンサー1
Tomcat の起動スクリプトとシャットダウン スクリプトで使用される2 つの環境変数 -CATALINA_OPTS
と-があります。JAVA_OPTS
catalina.sh
カタリナ_OPTS:catalina.sh 内のコメント:
# CATALINA_OPTS (Optional) Java runtime options used when the "start",
# "run" or "debug" command is executed.
# Include here and not in JAVA_OPTS all options, that should
# only be used by Tomcat itself, not by the stop process,
# the version command etc.
# Examples are heap size, GC logging, JMX ports etc.
JAVA_OPTS:catalina.sh 内のコメント:
# JAVA_OPTS (Optional) Java runtime options used when any command
# is executed.
# Include here and not in CATALINA_OPTS all options, that
# should be used by Tomcat and also by the stop process,
# the version command etc.
# Most options should go into CATALINA_OPTS.
では、なぜ 2 つの異なる変数があるのでしょうか? そしてその違いは何でしょうか?
まず、いずれかの変数で指定されたものはすべて、Tomcat を起動するコマンド (
start
またはrun
コマンド) に同じように渡されますが、コマンドJAVA_OPTS
に渡されるのは で設定された値だけですstop
。これは実行の開始ではなく終了にのみ影響するため、Tomcat の実際の実行方法には影響しない可能性があります。2 番目の違いはより微妙です。他のアプリケーションも を使用することがあります
JAVA_OPTS
が、CATALINA_OPTS
を使用するのは Tomcat だけです。したがって、Tomcat のみで使用する環境変数を設定する場合は を使用することをお勧めしますCATALINA_OPTS
が、JBoss などの他の Java アプリケーションでも使用する環境変数を設定する場合は、設定を に配置する必要がありますJAVA_OPTS
。