2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

[リサーチ・メモ] JAR, WAR, EAR の違い

Last updated at Posted at 2023-07-09

背景

仕事でJARファイルを使用したが、聞いたことのあるWARやEARとの違いが
説明できない為、メモとして纏める。

JAR(Java Archive)

JARファイルは、Javaアプリケーションやライブラリのパッケージングに使用されます。JARファイルは、Javaバイトコード、リソースファイル、設定ファイルなどを1つのアーカイブにまとめます。これにより、複数のクラスやリソースを単一のファイルとして配布することができます。主にJava SE(Standard Edition)アプリケーションや独立したJavaライブラリに使用されます。

作成方法

仕事だとeclipseで下記を実施
1.パッケージ化するプロジェクトを右クリック
2.実行からMaveninstall
3.target配下にjarファイルが作成される

別の方法
1.eclipseでパッケージ化するプロジェクトを右クリック
2.Exportからjavaのjarファイルを選択
3.項目やエクスポート先等を選択し、作成

利用方法

他のjavaプロジェクトでライブラリとして利用

WAR(Web Archive)

WARファイルは、Java Webアプリケーションのパッケージングに使用されます。WARファイルには、ウェブアプリケーションのJavaクラス、静的リソース(HTML、CSS、JavaScriptなど)、構成ファイル、ライブラリなどが含まれます。これにより、ウェブアプリケーションを単一のファイルとしてデプロイおよび配布することができます。主にJava EE(Enterprise Edition)アプリケーションサーバーで実行されるウェブアプリケーションに使用されます。

作成方法

1.eclipseでパッケージ化するプロジェクトを右クリック
2.Exportからwebのwarファイルを選択
3.エクスポート対象のリソースや出力先のファイル名を指定し作成

利用方法

Java サーブレットコンテナにデプロイ

EAR(Enterprise Archive)

EARファイルは、Java Enterpriseアプリケーションのパッケージングに使用されます。EARファイルには、複数のモジュール(WARファイル、EJB(Enterprise JavaBeans)JARファイルなど)とそれらの構成情報が含まれます。これにより、Java EEアプリケーションを1つのアーカイブとしてパッケージングし、デプロイおよび配布することができます。主にJava EEアプリケーションサーバーで実行されるエンタープライズアプリケーションに使用されます。

作成方法

1.eclipseでパッケージ化するプロジェクトを右クリック
2.ExportからjavaEEのearファイルを選択
3.エクスポート対象のリソースや出力先のファイル名を指定し作成

利用方法

Java EE アプリケーションサーバーにデプロイ

まとめ

形式の違いは、パッケージングの対象や使用目的によって異なる
JARファイル:単一のJavaアプリケーションやライブラリをパッケージ化
WARファイル:Webアプリケーションをパッケージ化
EARファイル:複数のJavaEEコンポーネントを包括的にパッケージ化し、エンタープライズアプリケーションをデプロイする

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?