2016-09-01 4 views
7

なぜSpringブートはデフォルトでWebアプリケーションを.jarとパッケージ化するのですか? .warに勝る利点はありますか?SpringブートパッケージWebアプリケーションを.jarに変換

実際のWebサーバーに展開するために、すべてのWebアプリケーションを.warとしてパッケージ化してはいけませんか?

.jarファイルはデスクトップアプリケーション用で、.warファイルはWebアプリケーション用です。ここに述べたように.jarファイルがWebアプリケーションコンポーネントが含まれていませんので、:

Java war vs. jar - what is the difference?

答えて

5

あなたはJAR対WARについての質問にリンクされている春のブーツのJARは確かにJARである一方で、それはあなたが通常JAR内に置く何よりも含まれています。スプリングブーツはの中にが付いています。

だから、違い:

  • JAR:通常含まれているリソース/ライブラリ/デスクトップアプリケーション/ ...
  • WAR: Webコンテナ
  • を実行できるWebアプリケーション
  • 春ブーツ脂肪JAR:

    :独自のWebコンテナあなたの質問について

上で動作するWebアプリケーション

実際のWebサーバーに展開するには、すべてのWebアプリケーションを.warとしてパッケージ化してはいけませんか。

既存のサーブレットコンテナでWebアプリケーションを実行する場合は、use a WAR fileにする必要があります。しかし、SpringブートJARには独自のサーブレットコンテナが付属しているため、完全に実行することもできます。

あなたが選んだ2つのうちどちらがあなた自身の選択です。 Josh Long's mantraが「WARではなくJARを作成する」であっても。

+0

の戦争を作成することができます。make JAR、WARありません – JonyD

0

スプリングバットの全体的なポイントは最小限の構成で開発のスピードだと思います。だからあなたは、彼らが箱のソリューションを提供すると思うかもしれません、そのサーバー(tomcatまたはjetty)がjarファイルに埋め込まれています。

また、クラウド上のマイクロサービスは、サーバーがアプリケーション専用に最適化され、小さなアプリケーションのためにTomcatサーバーを設定する必要がないように、組み込みサーバーをjarに昇格しています。

したい場合は、同意春ブートアプリケーション
https://docs.spring.io/spring-boot/docs/current/reference/html/howto-traditional-deployment.html

関連する問題