<目次>
(1) EARファイル・WARファイル・JARファイルの違いや特徴について
(1-1) JARファイルとは(.jar)
(1-2) WARファイル(.war)
(1-3) EARファイルとは(.ear)
(1-4) まとめ(三者の違い)
(1) EARファイル・WARファイル・JARファイルの違いや特徴について
タイトルの通り、Javaのモジュールをパッケージした形式であるEAR・WAR・JARの違いについてご紹介します。
EAR・WAR・JARはいずれもJava関連のモジュールを「デプロイ可能な単位」に固めたもので、この形式でJBossやTomcatといったアプリケーションサーバに配備して稼働させる事が可能になります。しかし、それぞれデプロイ対象の資産の内容や、配備先のサーバ種類が異なったりしています。
違いを理解するために、最初にそれぞれの概要について簡単に見ていきます。また図を使って、EARやWARやJARが全体像のどこに関連する資源なのか?も図示していきます。
(図100)
(1-1) JARファイルとは(.jar)
JAR (EJB-JARの場合) |
|
配備対象 | ●配備対象 EJBを固めた特殊なJarファイル(※注1)の場合、「EJBコンテナ」にデプロイします。 ●概要 (※注1) |
動作環境 | ・JREが必要 |
資産 | 下記のような資産を集めて「.jar」形式に固める
(例) |
デプロイメントディスクリプタの名前 | ・「META-INF」配下に「ejb-jar.xml」を配備 |

(1-2) WARファイル(.war)
WAR | |
配備対象 | ●配備対象 「Webコンテナ」(≒Servletコンテナ)にデプロイします。 ●概要 ●(例)代表的なサーブレットコンテナ |
動作環境 | ・Java EE(一部=Web Profile)が必要 ⇒(例)Tomcat、Jettyなど |
資産 | 下記のような資産を集めて「.war」形式に固める (例) ・JARファイル ・JSP ・Servlet ・XML ・HTML |
デプロイメントディスクリプタの名前 | ・WEB-INF配下に「web.xml」を配備 |

(1-3) EARファイルとは(.ear)
EAR | |
配備対象 | ●配備対象 「アプリケーションサーバ」にデプロイします。 ●概要 ●(例)代表的なアプリケーションサーバ |
動作環境 | ・Java EE(全部)が必要 ⇒(例)Jboss、WebSphere、WebLogic、GlassFishなど (備考) |
資産 | EARファイルやJARファイルを1個~複数個集めて「.ear」で固めたもの
(例) |
デプロイメントディスクリプタの名前 | ・META-INF配下に「application.xml」を配備 |
(1-4) まとめ(三者の違い)
●デプロイに必要な環境