web-dev-qa-db-ja.com

Javaにおけるjarとwarの違い

.jarファイルと.warファイルの違いは何ですか?
それはファイル拡張子だけなのか、それともそれ以上があるのか​​。

393
helpermethod

From Javaのヒント:ear jarファイルとwarファイルの違い

これらのファイルは、Javaのjarツールを使用した単純なzipファイルです。これらのファイルはさまざまな目的で作成されています。これらのファイルの説明は次のとおりです。

  • .jar files: .jarファイルライブラリ、リソース、アクセサリファイルを含む _プロパティファイルと同じです。

  • .war files: warファイルWebアプリケーションを含む _任意のservlet/jspコンテナにデプロイできます。 .warファイルjsp、html、javascriptを含むおよびWebアプリケーションの開発に必要なその他のファイル。


公式のSun/Oracleの説明:


ウィキペディアの記事:

327
aioobe

.warファイル は、特定のファイルの保存場所に関して特定の構造を持っています。それ以外は、はい、それは単なる.jarです。

66
T.J. Crowder

Webコンポーネントは、Webアプリケーションアーカイブ(WAR)と呼ばれるパッケージでJ2EEアプリケーションに追加します。これは、Javaクラスライブラリに使用されるパッケージに似たJARです。 WARには通常、Webコンポーネント以外に次のような他のリソースが含まれています。

  • サーバサイドユーティリティクラス(データベースBean、ショッピングカートなど).
  • 静的Webリソース(HTML、画像、およびサウンドファイルなど)
  • クライアントサイドクラス(アプレットとユーティリティクラス)

WARは特定の階層ディレクトリ構造を持ちます。 WARの最上位ディレクトリは、アプリケーションのドキュメントルートです。ドキュメントルートは、JSPページ、クライアントサイドのクラスとアーカイブ、および静的Webリソースが格納される場所です。

ソース

そのため、.warは.jarですが、Webアプリケーションコンポーネントが含まれており、特定の構造に従ってレイアウトされています。 .warは、TomcatやJettyなどのWebアプリケーションサーバー、またはJBossやGlassfishな​​どのJava EEサーバーにデプロイされるように設計されています。

36
justkt

WARWebアプリケーションARchiveを表します

JARJava ARchiveを表します

enter image description here

13

.warファイルはアプリケーションサーバー内で動作するWebアプリケーションアーカイブであり、.jarはユーザーのマシン上でデスクトップアプリケーションを実行するJavaアプリケーションアーカイブです。

13
Justin Niessner

Warファイルは、Webアプリケーションをパッケージ化してアプリケーションサーバーに簡単にデプロイできるようにするために使用される特別なjarファイルです。 warファイルの内容は定義された構造に従う必要があります。

10

.jarと.warはどちらもzipアーカイブファイルです。どちらも、バージョン管理などの有益な情報と、それを実行するJVMのクラスパスやメインクラスなどの指示属性を保持する、オプションのMETA-INF/MANIFEST.MFマニフェストファイルを持つことができます。

.warファイル - 'Servlet Container'内で実行されることを意図したWebアプリケーションアーカイブ。他のjarファイル(WEB-INF/libディレクトリにある)コンパイル済みクラス(WEB-INF/classesにある(サーブレットもあります)).jspファイルイメージ、ファイルなど自己完結型モジュールを作成するためにあるすべてのWARコンテンツ。

7
Haim Sulam

基本的に両方の圧縮アーカイブ。特定のディレクトリ構造を持つWebアプリケーションにはwarが使用されます。

4
fmucar

warとjarはJavaファイルのアーカイブです。戦争はWebアーカイブであり、彼らはWebサーバー上で実行されています。 jarはJavaアーカイブです。

4
n_yanev

Jar:-jarには.classのみが含まれますwar:-warにはhtml、js、css、および.classも含まれます。

0
Thermal IT

JARファイルを使用すると、複数のファイルをパッケージ化して、ライブラリ、プラグイン、またはあらゆる種類のアプリケーションとして使用できます。一方、WARファイルはWebアプリケーションにのみ使用されます。

JARは任意の構造で作成できます。対照的に、WARには、WEB-INFおよびMETA-INFディレクトリを持つ事前定義された構造があります。

JARファイルを使用すると、Java Runtime Environment(JRE)が、単一の要求でクラスと関連リソースを含むアプリケーション全体をデプロイできます。一方、WARファイルを使用すると、Webアプリケーションを簡単にテストおよびデプロイできます。

0

JARファイル拡張子は.jarで、コマンドプロンプトからjarコマンドで作成されます(javacコマンドが実行されるなど)。通常、JARファイルにはライブラリ、クラスなどのJava関連リソースが含まれます。JARファイルはwinzipファイルに似ていますが、Jarファイルはプラットフォームに依存しません。

WARファイルは単なるJARファイルですが、サーブレット、JSP、HTMLなどのWeb関連のJavaファイルのみが含まれています。

WARファイルを実行するには、Tomcat、Weblogic、WebsphereなどのWebサーバーまたはWebコンテナが必要です。 JARファイルを実行するには、単純なJDKで十分です。

0
Animesh Jaiswal

戦争 -

javaベースのWebアプリケーションを配布します。 WARはJARファイルと同じファイル構造を持ちます。これは、内部に複数のファイルがバンドルされた単一の圧縮ファイルです。

ジャー -

.jarファイルには、ライブラリ、リソース、およびプロパティファイルなどのアクセサリファイルが含まれています。

WARファイルは、JSP、サーブレット、Javaクラスファイル、XMLファイル、JavaScriptライブラリ、JARライブラリ、静的Webページ、およびアプリケーションの実行に必要なその他のリソースを組み合わせるために使用されます。

0
Akitha_MJ