2017-04-23 16 views
0

私がJavaの春の起動アプリケーションを作るとき、それは瓶が必要と仮定します。春のブートのための雲の鋳造依存性の瓶

しかし、私は雲のファウンドリに私のアプリを展開するとき、すべてのjarが私のアプリを構築し、クラウドファウンドリやクラウドファウンドリに行くでしょうポンポンなど を見て瓶依存性を提供し、私は、ビルドフォルダを見てきましたが、jarがありますそうではありません。 私はクラウドファウンドリーを初めて利用しています。

答えて

2

ほとんどのアプリケーションタイプとビルドパックでは、アプリケーションをCloud Foundryにプッシュすると、ソースコードがプッシュされ、必要に応じて、ビルドパックによってステージングプロセス中にソースコードがコンパイルされます。たとえば、Golangビルドパックを使用すると、Goソースコードがプッシュされ、ステージングでコンパイルされて実行されます。

このルールの2つの例外は、Javaビルドパックとバイナリビルドパックです。これらの2つのビルドパックは、コンパイル済みのビットをプッシュしているものとみなし、コンパイルしません。

Javaの場合、Maven、GradleなどのビルドシステムをローカルまたはCIシステムで実行して、展開可能な成果物を生成することを意味します。これは、WARファイルまたはJARファイル、または他のいくつかのものです(他のサポートされているフォーマットの場合はJava build pack docsの「標準コンテナ」を参照)。形式にかかわらず、完全なデプロイ可能なユニットである必要があるため、すべての依存ライブラリを含める必要があります。

補足として、cf cliには、cf pushプロセスのスピードアップと帯域幅の節約に役立つ優れた機能があります。これは、アップロードされているファイルと、サイズが65kを超えるファイル(デフォルトでは、これを変更することができます)とCloud Controllerにキャッシュされたファイルに一致します。キャッシュにローカルファイルがすでに存在する場合は、再度アップロードされません。これは、プッシュの間で頻繁に変更されない従属JARファイルに最適です。

+0

あなたの努力と知識を共有してくれてありがとうございました。 – pradeep

1

通常、Springブートアプリケーションは、Springブートのmavenまたはgradleプラグインを使用して、 "fat jar"としてパッケージ化されています。アプリケーションコードとすべての依存jarは、単一のjarファイルにパッケージ化されています。

クラウドファウンドリは、Javaアプリケーションのデプロイ時に依存jarをダウンロードしません。すべての依存関係を持たせるのはアプリケーションの責任です。

+0

ありがとうスコット - 素敵で、鮮明でクリアな – pradeep

関連する問題