web-dev-qa-db-ja.com

Tomcat8用にsetenv.shを構成する方法は?

カスタムメモリパラメータをTomcat8サービスに追加するにはどうすればよいですか?

次のファイルを作成しました。

-rwxr-xr-x 1 root root 211 Jun 13 10:51 setenv.sh

コンテンツ:

#! /bin/sh
export CATALINA_OPTS="$CATALINA_OPTS -Xmx1024m"
export CATALINA_OPTS="$CATALINA_OPTS -Xms512m"

再起動後:

ps aux | grep Java

結果:定義したメモリオプションが表示されません。のみ:... -Xmx128m

しかし、なぜ? setenv.shが正しくロードされているかどうか、またはその理由を確認するにはどうすればよいですか?

3
membersound

解決策:間違ったディレクトリを取得しました。 setenv.shはここに配置する必要があります:

/usr/share/Tomcat8/bin

3
membersound

質問にはTomcat8が記載されているので、これはDebianパッケージを参照していると思います。私はこの問題に対するDebianに適した解決策を探していましたが、起動時に任意のシステムプロパティをTomcatに追加する別の方法を発見しました。

Tomcatの標準Debianパッケージは、以下の下にデフォルトの設定ファイルも作成します。

/etc/default/tomcatX(XはTomcatのバージョン番号です)。

システムプロパティおよびその他のJVM起動パラメータをJava_OPTSに追加できます。

# You may pass JVM startup parameters to Java here. If unset, the default
# options will be: -Djava.awt.headless=true -XX:+UseConcMarkSweepGC
#
# Use "-XX:+UseConcMarkSweepGC" to enable the CMS garbage collector (improved
# response time). If you use that option and you run Tomcat on a machine with
# exactly one CPU chip that contains one or two cores, you should also add
# the "-XX:+CMSIncrementalMode" option.
Java_OPTS="-Djava.awt.headless=true -XX:+UseConcMarkSweepGC"

ちなみに、これは、システムに複数がインストールされている場合、またはTomcatを実行しているユーザーを変更できる場合に、異なるJVMを指定できる構成ファイルでもあります。

1
tiguchi