2

Tomcat 7、Jeresy 1.12 を使用。

Jersey なしで Tomcat を起動する時間は 4 秒です。

Jersey の jar ファイルを tomcat/lib ディレクトリに追加すると、起動に 50 秒かかります。どのサーブレットを使用するかは問題ではありません。web.xml が空 (サーブレットなし) の場合でも、その時間はかかります。

問題の原因となる jar は jersey-servlet-1.12 です。libディレクトリから削除すると、起動時間が再び正常になります。その jar (\META-INF\services\*) で定義されているサービスが問題を引き起こしていると思われますが、正確な原因を見つけることができませんでした...

ところで: metadata-complete="true" は問題を解決しませんでした。

編集:この問題は Jersey チームによって確認されました ( issue JERSEY-1317 )。この問題の回避策は、 からMETA-INF/services/javax.servlet.ServletContainerInitializerファイルを削除することですjersey-servlet.jar。これにより、Servlet3 の機能の一部が無効になります。

4

1 に答える 1

0

catalina.propertiesのtomcat.util.scan.DefaultJarScanner.jarsToSkipリストにjar を追加することもできます。

このようにして、jar の新しいバージョンを使用することができ、それを編集する必要があることを覚えておく必要はありません。

http://tomcat.10.x6.nabble.com/tomcat-7-0-29-startup-time-td4984446.htmlを参照してください。

于 2013-06-04T11:29:36.303 に答える