0

Tomcat の下で同じ Web アプリケーションの多くのインスタンスを実行し、メモリを節約するために、いくつかのライブラリを Tomcat の lib (tomcat\lib) および共有 (tomcat\shared) フォルダーにコピーします。lib の下にあるライブラリは、Tomcat と Web アプリケーションの両方で見つけることができます。shared-folder の下にあるライブラリは、Web アプリケーションでのみ使用できます。私の Web アプリケーションには Web アプリケーション レベルのライブラリも必要なので、これらのライブラリは WEB-INF\lib の下にあります。

pom.xml で、ほとんどのライブラリが WEB-INF\lib にコピーされないように提供の範囲を持っていることを定義しましたが、いくつかのライブラリをカスタム定義の下に置きたいと定義する方法はありますか?フォルダ; たとえば、WEB-INF\lib\tomcat\shared および WEB-INF\lib\tomcat\lib から、サーバー上の Tomcat の対応するフォルダーに手動で移動できますか?

4

2 に答える 2

1

通常、Webアプリケーションはwarファイルをさらに変更せずにデプロイされるため、これは依存関係をパッケージ化するための実際に推奨される方法ではありません。

依存関係:コピー依存関係の目標を使用して、必要なものをアーカイブできると思いますが、いくつかの構成が必要になります。includeScopeに設定しprovided、正しい設定をしてから、またはオプションoutputDirectoryを使用してアーティファクトを定義する必要があります。includeGroupIdsincludeArtifactIds

于 2012-05-16T11:41:16.183 に答える
1

war ファイルを含む別の Maven プロジェクトを作成し、share-folder にスコープとして配置する必要がある依存関係を定義します。さらに、これらの依存関係を持つ別のモジュールを作成し、maven-assembly-plugin を介して適切なアーカイブを作成します...

于 2012-05-16T12:47:20.273 に答える