第16章 補足参考資料

16.1. Java Archiveの種類

Enterprise Application Platform は様々な種類のアーカイブファイルを認識します。アーカイブファイルを使いデプロイ可能なサービスやアプリケーションをパッケージします。
一般的に、アーカイブファイルは特定のファイル拡張とディレクトリ構造を持つ zip アーカイブです。Zip アーカイブがアプリケーションサーバーにデプロイされる前に展開されると、展開済みアーカイブとして参照されます。その場合、ディレクトリ名にはファイルの拡張子が含まれており、ディレクトリ構造の要件も適用されます。

表16.1

アーカイブタイプ 拡張 目的 ディレクトリ構造の要件
Java アーカイブ .jar Java クラスのライブラリが含まれています。
META-INF/MANIFEST.MF ファイル (オプション)。このファイルで、どのクラスが main クラスであるかなどの情報を指定します。
Web アーカイブ .war
Java Server Pages (JSP) ファイル、サーブレット、XML ファイル、Java クラスやライブラリが含まれています。Web アーカイブのコンテンツは Web アプリケーションとして参照されます。
WEB-INF/web.xml ファイル。Web アプリケーションの構造に関する情報が含まれています。他のファイルが WEB-INF/ に存在する場合もあります。
リソースアダプターアーカイブ .rar
JCA 仕様によりディレクトリ構造が指定されます。
Java Connector Architecture (JCA) リソースアダプターが含まれています。コネクターとも呼ばれます。
エンタープライズアーカイブ .ear
各種モジュールをアプリケーションサーバーに同時にデプロイできるように、Java Enterprise Edition (EE) が 1 つ以上のモジュールを1 つのアーカイブにパッケージする際に利用します。EAR アーカイブを構築するツールで最も一般的なものは Maven および Ant です。
META-INF/ ディレクトリ。このディレクトリには 1 つ以上の XML デプロイメント記述子ファイルが含まれています。
以下のモジュールタイプのいずれか
  • Web アーカイブ (WAR)
  • Plain Old Java Object (POJO) を含む Java Archive (JAR) 1 つ以上
  • 独自の META-INF/ ディレクトリを含むエンタープライズ JavaBean (EJB) モジュール 1 つ以上。このディレクトリには、デプロイされる永続クラスの記述子が含まれています。
  • リソースアーカイブ (RAR) 1 つ以上
サービスアーカイブ .sar
エンタープライズアーカイブに似ていますが、Enterprise Application Platform 固有のものです。
jboss-service.xml あるいは jboss-beans.xml ファイルを含むMETA-INF/ ディレクトリ。