Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Eclipse Java

WARファイルの作成方法について(Eclipse利用あり、なしの2パターン)

投稿日:2021年8月31日 更新日:

 

<目次>

(1) WARファイルの作成方法について(Eclipse利用あり、なしの2パターン)
 (1-1) 方法①:Eclipseを使ってWARファイルを作る方法
 (1-2) 方法②:コマンドでWARファイルを作る方法

(1) WARファイルの作成方法について(Eclipse利用あり、なしの2パターン)

アプリケーションサーバ(Jboss、WebSphere、WebLogic、GlassFish)にご自身のWebアプリケーションをデプロイする際に、WARファイル等の形式でデプロイする事があると思いますが、今回はJavaの動的Webプロジェクトを例に、WARファイルの作り方をご紹介します。
 
Javaの動的Webプロジェクトの場合、EARの中身はWebContent配下を固めたものになっています。
(図100)

(1-1) 方法①:Eclipseを使ってWARファイルを作る方法

Eclipseを使う方法は非常にお手軽ですので、基本的にはこちらの方法をおすすめします。

●①Eclipseのメニューから「File」⇒「Export」を押下します。

(図111)

●②Exportの形式で「Web」⇒「WAR file」を選択します

(図112)

●③必要な項目を入力して「Finish」を押下します。

注意点として、Optimize for a specific server runtimeはデプロイ先の環境のバージョンが不確定の場合はチェックを外した方が無難です。
 
(表)項目の補足説明
Optimize for a specific server runtime 生成されるWARファイルを特定のサーバ実行環境(例:Tomcatのバージョンなど)に最適化します。
どの環境にデプロイするか不明な場合はチェックを外します。
Export source files 通常はチェックされませんが、もしクラスファイル(.class)のみならず、Javaのソースファイル(.java)を含めたい場合はチェックを入れます。
(図113)①
 
(補足)
「Export source files」のチェックの有無で次のように変化します。
 
(図113)②

●④指定したディレクトリに生成されているか?をチェックします。

(図114)
 

(1-2) 方法②:コマンドでWARファイルを作る方法

次はコマンドでWARファイルを作る方法です。基本的に出来上がりは同じですが、こちらはコマンドを使う上、複雑なプロジェクトになるほど、Eclipseの機能ほど気の利いた動きでは無いため、基本的にEclipseが無い場合の次の手として使っていく感じかと思います。

●プロジェクトのWebContent直下(WEB-INF直上)まで移動

(構文)
$ cd /[EclipseWorkspaceのパス]/[プロジェクト名]/WebContent
 
(例)
$ cd /home/admin/eclipse-workspace/TennisDatabase/WebContent
 
(図121)

●WARファイル生成コマンドの実行-INF直上)まで移動

次のコマンドでWARファイルを作成します。WARファイルはコマンドを実行したディレクトリに作成されます。
 
(構文)
$ jar -cvf [プロジェクト名].war *
 
(例)
$ jar -cvf TennisDatabase.war *
 
(表)コマンドオプションの補足
オプション 説明
-c jarファイル(やwarファイル等)を作るためのオプションです。
-v コマンド実行時に詳細な情報を出力するように指示します。
-f 生成するファイルの名前を指定する際に利用します。
末尾の「*」 サブフォルダも含めた配下の全てのファイルを対象にする事を明示的に指定しています。
(図122)
 
(実行結果例)

[admin@ik1-336-28337 WebContent]$ jar -cvf TennisDatabase.war *
マニフェストが追加されました
エントリMETA-INF/を無視します
エントリMETA-INF/MANIFEST.MFを無視します
TENGSWIN_GrandSlamWinRank.jspを追加中です(入=4596)(出=1524)(66%収縮されました)
TENHTOHQ_HeadToHeadQuery2.jspを追加中です(入=2908)(出=1199)(58%収縮されました)
~以下略~
 
・コマンドを実行した階層にwarファイルが作られた事を確認します。
(図123)

●注意点

上記のコマンドでWARファイルを作る際、もしビルドパス等に他プロジェクト等を指定している場合は、その情報は含まれないため注意が必要です(単純にコマンド実行した配下のファイルをWARファイル化)するため。
 
例えば、以下の例では「UtilComponents」という他プロジェクトをビルドパスとして指定しています。
 
(図124)
 
もしEclipseの機能でWARを作成した際は、この情報も含めて作成してくれる(UtilComponents.jarを作って含めてくれる)ため心配ないのですが、コマンドの場合はこの点で注意が必要です。
 
解決策としてMavenを使う?等があるようですが、私はまだ試した事がないため、もし分かる方が居たら教えてください💦
 

Adsense審査用広告コード


Adsense審査用広告コード


-Eclipse, Java

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

JFreeChartを使ってJavaで様々なグラフを簡単に描画する方法

(0)目次&概説 (1) 記事の目的  (1-1) 目的 (2) JFreeChartの概要  (2-1) JFreeChartとは?  (2-2) JFreeChartのアーキテクチャについて (3 …

Failed to execute goal org.apache.mavenエラーの原因と対処(Spring BootのMavenプロジェクトで発生)

  <目次> (1) Failed to execute goal org.apache.mavenエラーの原因と対処(Spring BootのMavenプロジェクトで発生)  (1-1) …

Javaで正規表現の使い方をご紹介+サンプルプログラム付き

<目次> (1) Javaで正規表現の使い方をご紹介  (1-1) 正規表現とは?  (1-2) Javaでの正規表現の使い方  (1-3) サンプルプログラム (1) Javaで正規表現の使い方をご …

Javaでcsvファイルに書き込みを行う方法(サンプルプログラム付き)

<目次> (1) Javaでcsvファイルに書き込みを行う方法  (1-1) 構文  (1-2) サンプルプログラム (1) Javaでcsvファイルに書き込みを行う方法 Javaでcsvファイルを生 …

JSP/Servletで画面毎のアクセスカウンターを作成してみた(パート1:仕様説明編)

(0)目次&概説 (1) 仕様について  (1-1) アーキテクチャ(アプリ/DB)  (1-2) アプリの仕様概要  (1-3) データベースの仕様概要 (2) ソースコード (3) エラー対応 ( …

  • English (United States)
  • 日本語
Top