多くの場合、必要な依存関係がすべて含まれているため、サーバーに配置するアプリケーションの重みは、非常に大きなサイズになります。 私のアプリケーションは最終的に20から50メートルかかります。 このような戦争をリモートサーバー、Tomcatに展開するのはほんの数分ではありませんが、通信が不十分な場合は完全に問題になります。 ライブラリを$ {tomcat.home} / libに配置することは非常にありがたく、しばしば危険なことです。 私たちは少しグーグルで調べて、DZoneで非常に快適な解決策を見つけました。 私はあなたと共有したい...
すぐに言いたいのは、この方法は主に猫を飼育し、ホスティング業者のサービスを使用しない人に適しているということです...
Tomcat APIのドキュメントを注意深く読んだ一人のDapeng Liuは、非常にライブラリを実装し
ました 。これは
ここから入手でき
ます 。 実際、ライブラリは猫用のアプリケーションローダーの実装です。
仕組み:
- このライブラリを$ {tomcat.home} / libに配置します
- リポジトリフォルダーが$ {catalina.home}に作成されます。 リポジトリを含むフォルダーを作成します。 たとえば、休止状態を使用する場合、一度に複数のライブラリに依存します。 ディレクトリ$ {catalina.home} /repo/hibernate_3.3.0を作成し、そこに必要なすべてのライブラリを追加します。 特定のプロジェクトのリポジトリをすぐに作成し、必要なライブラリをすべて一度に配置できます。
- アプリケーションのコンテキストの説明を修正してください。 次のようになります。
<Context path="/testapp">
<Loader className='com.spiralcomms.tomcat.WebappLoader' />
<lib>spring_2.5.6</lib>
<lib>hibernate_3.3.0</lib>
</Context>
- アプリケーションは、指定されたローダーによってデプロイされます。 デプロイメントが開始されると、ローダーはすべてのlibタグのコンテキストを調べ、$ {catalina.home} / repoフォルダーでそれらのリポジトリーを見つけ、ダウンロードに含めます
したがって、アプリケーションは20〜50メートルから1.5から2メートルに劇的に重量が減り、サーバーへのアップロード速度に何の影響も与えません。
もちろん、そのようなプロセスは開発者に制約を課します。 アプリケーションをレイアウトするとき、リポジトリを更新するためにライブラリがアプリケーションに追加されているかどうかを知る必要があります。
個人的には、サーバーへの弱いチャネルがあり、アプリケーションの変更に関して顧客と多くの作業がある場合、この方法は非常に役立ちます。 編集を行い、1日に最大20回サーバーにアップロードする必要があります。
PS見つかった解決策の元の説明は
ここにあります 。