6

catalina ベースの catalina.sh に JAVA_OPTS を介して JVM オプションを配置しました。しかし、システムはこれらのオプションを選択しません。プロファイリング情報を渡して、プロジェクト プロパティとログ ファイルのパスを設定しようとしています。プライベート インスタンスのビンの setenv.sh でオプションを設定する必要があります。JAVA_OPTS を表示するために catalina.sh に入力した echo コマンドでさえ、CATALINA_BASE などの出力されたデフォルト値を取得しません。印刷してください。catalina.sh は処理されていますか?

1 日の終わりに、私のシステムは setenv.sh で正常に動作します。JAVA_OPTS が catalina.sh から取得されない理由が気になります。

TOMCAT 7がインストールされ、JDK 1.7がインストールされたUbuntu 12.04を使用しています。

ありがとう

4

3 に答える 3

8

catalina.sh ファイルを編集することは想定されていません。そのファイルにはそのように記載されています。代わりに、環境変数を設定するには、 catalina.shと同じディレクトリ (CATALINA_BASE/bin と呼ばれる) にsetenv.shファイルを作成し、その中にコードを記述します。

JAVA_OPTS自分で変数を設定する必要があり、bin/setenv.shファイルを作成し、実行可能に設定して、次のように記述chmod +x bin/setenv.shしました。

JAVA_OPTS="$JAVA_OPTS -Xms128m -Xmx512m -server"

これにより、最初に割り当てられたメモリが 128 に、最大メモリが 512 MB に設定されました。そして、それは働いていました。

于 2015-12-18T10:21:54.360 に答える
2

編集してください:/etc/default/tomcat7または/etc/default/{user_who_runs_tomcat}

例えば:

*JAVA_OPTS="-Djava.awt.headless=true -Xmx2G -XX:+UseConcMarkSweepGC -server -XX:MaxPermSize=384m"*
于 2014-07-13T14:50:22.663 に答える
1

catalina.shには多くの条件があります - 間違った位置を編集したり、そのファイルで後で上書きされたりすることが何度もありました。setenv.sh正常に動作し、まさにそれが目的です: tomcat の更新をインストールしていると想像してくださいcatalina.sh。ただし、Tomcat には が付属してsetenv.shいないため、変更が上書きされることはありません。

CATALINA_OPTSさらに、次の代わりに定義することもできますJAVA_OPTS。これらは、Tomcat を起動するために使用されるオプションです。構成の一部JAVA_OPTS="-Xmx16G -Xms16G"JAVA_OPTS. 起動プロセスのみがCATALINA_OPTS環境で生成されます (に加えてJAVA_OPTS)。したがって、構成/調整する必要がある可能性が最も高いです。そうしないと、shutdown.sh のばかげたメモリ要件のために tomcat を停止できないリスクがあります。

于 2014-07-14T10:11:44.963 に答える