3

私は次のことについて疑問に思っています:私は単一のWebアプリケーション専用のTomcat7を持っています。$ TOMCAT_HOME / libディレクトリ内にjarを配置することに意味はありますか?ドキュメントには次のように書かれています。

したがって、Webアプリケーションの観点から、クラスまたはリソースのロードは、次のリポジトリーをこの順序で調べます。

  • JVMのブートストラップクラス
  • システムクラスローダークラス(上記)
  • / WEB-INF/Webアプリケーションのクラス
  • Webアプリケーションの/WEB-INF/lib/*.jar
  • 一般的なクラスローダークラス(上記)

したがって、これを正しく読んでいれば、avtivemqまたはcommons-dbcpを配置する必要がある理由はありません。代わりに、それらをwebapps libフォルダーに配置して、最初に取得されることを絶対に確信できます。もしそうなら、$ TOMCAT_HOME / libディレクトリを使用するのに意味のある他のシナリオはありますか?そうでない場合は、上記の欠陥がどこにあるのか説明していただけますか?

ありがとう、

G。

4

2 に答える 2

2

Web アプリケーション (またはそれらのほとんど) が同じバージョンの同じライブラリ (つまり、データベース ドライバまたは SPI ObjectFactories) を共有する必要がある場合は、それらを $TOMCAT_HOME/lib で共有する必要があります。ライブラリを共有する確固たる理由がない場合は、それらを webapp のクラスローダーに保持します。

于 2013-05-14T09:02:33.343 に答える