IntelliJ IDEA 2020.1ヘルプ

チュートリアル: Java EEアプリケーションを開発する

このチュートリアルでは、Java EEアプリケーション開発ワークフローについて説明します。

開発しようとしているアプリケーションは最小限に抑えられます。それは1つのJSPページのJava Webアプリケーションになります。ただし、ここに示すIntelliJ IDEAの機能は、Java EEアプリケーションにも適用できます。

始める前に

次のソフトウェアがコンピューターにインストールされていることを確認します。

  • IntelliJ IDEA ULTIMATEエディション

  • GlassFish サーバーバージョン3.0.1以降。GlassFishをダウンロード(英語)。(他のJava EE対応アプリケーションサーバーを使用することもできます。ここでは例としてGlassFishを使用しています。)

  • Webブラウザ。

プロジェクトの作成

  1. ようこそ画面で新規プロジェクトの作成をクリックするか、ファイル | 新規 | プロジェクトを選択します。新規プロジェクトウィザードが開きます。

  2. 左側のペインで、Java エンタープライズを選択します。

  3. プロジェクト SDKリストから、プロジェクトで使用するJDKを選択します。

    JDKがコンピューターにインストールされているが、IDEで定義されていない場合は、JDKを追加を選択し、JDKホームディレクトリへのパスを指定します。

    コンピューターに必要なJDKがない場合は、JDK のダウンロードを選択します。

  4. アプリケーションサーバーを指定します。GlassFishサーバーを使用します。

    GlassFishがまだIntelliJ IDEAに定義されていない場合は、アプリケーション・サーバーフィールドの右側にある新規をクリックし、GlassFish サーバーを選択します。

    GlassFish サーバーダイアログで、GlassFishサーバーのインストールディレクトリを指定します。

  5. 追加のライブラリおよびフレームワークで、Web アプリケーションチェックボックスを選択します。

    Creating a project

    次へをクリックします。

  6. 新しいプロジェクトの名前を指定します(例:JavaEEHelloWorld)。

    Creating a project

    完了をクリックし、IntelliJ IDEA がプロジェクトを作成している間待ちます。

プロジェクトの構造を探る

プロジェクトが作成されると、プロジェクトツールウィンドウにこれに類似したものが表示されます。

HWJEE011ProjectInit
  • JavaEEHelloWorldはモジュールフォルダーです(この場合、プロジェクトフォルダーと一致します)。 .idea フォルダーと JavaEEHelloWorld.iml ファイルには、プロジェクトとモジュールの設定データがそれぞれ含まれています。 src というフォルダーは、あなたのJavaソースコードのためのものです。 web フォルダーは、アプリケーションのWebパーツ用です。現時点では、このフォルダーには、デプロイ記述子 WEB-INF/web.xml と、アプリケーションの開始ページとして指定されたファイル index.jsp が含まれています。

  • 外部ライブラリには、GlassFishを使用するためのJDKとJARファイルが含まれています。

ソースコードの開発

アプリケーションは単一のJSPページアプリケーションになります。その唯一の機能は、テキストHello, World!を出力することです

  1. 編集用 index.jsp を開く:プロジェクトツールウィンドウでファイルを選択し、F4を押します。

  2. <body></body>Hello, World!との間
    HWJEEIndexJSPHelloWorld

    このステップのコードは準備ができています。

アプリケーションの実行

ワークスペースの右上にある icons toolwindows toolWindowRunをクリックします。

HWJEE019Run

IntelliJ IDEAはあなたのソースコードをコンパイルし、アプリケーション成果物を構築します。

その後、実行ツールウィンドウが開きます。IntelliJ IDEAはサーバーを起動し、アーティファクトをその上にデプロイします。

HWJEE020RunToolWindow

最後に、デフォルトのWebブラウザが起動し、そこでアプリケーション出力 Hello, World! が表示されます。

HWJEE021HelloWorldInBrowser

コードの変更と変更の観察

  1. index.jspでは、Hello, World!Hello!に変更します。

    HWJEE022ModifyCode

  2. 実行ツールウィンドウで、update iconの更新をクリックします。

    HWJEE023RunToolWindowUpdate

  3. 更新ダイアログでリソースの更新を選択し、OKをクリックします。(詳細は、アプリケーションの更新オプションを参照してください。)

    HWJEE024UpdateDialog

  4. Webブラウザに切り替え、ページをリロードして変更を確認します。

    HWJEE025HelloInBrowser

アプリケーションサーバー上のアプリケーションを更新するも参照してください。

実行構成の探索

プロジェクトの作成時に、GlassFishをアプリケーションサーバーとして指定しました。その結果、IntelliJ IDEAはGlassFishの実行構成を作成しました。

Runコマンド icons toolwindows toolWindowRunを実行したときに、その実行構成を開始しました。それでは、実行構成を見て、その設定が今観察したイベントにどのようにマッピングされるかを見てみましょう。

  1. 実行構成セレクタをクリックし、構成の編集を選択します。
    HWJEE026EditConfigurations

    実行/デバッグ構成ダイアログが開き、GlassFish実行構成の設定が表示されます。

    HWJEE027RunDebugConfigurations

    ダイアログの下部にある起動前タスクリストは、実行コードを実行する前に、アプリケーションコードをコンパイルし、対応する成果物を構築する必要があることを指定します。

    HWJEE028RunConfigBeforeLaunch
  2. スタートアップ/接続タブを選択して、実行、デバッグ、およびコードカバレッジモードでのサーバーの起動方法を確認します。

    HWJEE030RunConfigStartupConnection

  3. デプロイ」タブを選択して、サーバーの始動後にデプロイされる成果物を確認します。

    HWJEE029RunConfigDeployment

  4. サーバータブに戻ります。

    ブラウザーを開くの設定は、起動後(サーバーの起動後、アーティファクトのデプロイ後)、デフォルトのWebブラウザを起動して、指定されたURLの http://localhost:8080/JavaEEHelloWorld_war_explodedに移動するように指定します。

    '更新' アクション時の右側の設定では、実行ツールウィンドウの update icon をクリックすると、更新ダイアログが表示され、リソースの更新オプションがデフォルトで使用されるはずです。( 最後に使用された更新オプションがデフォルトのものになります)。

    HWJEE028RunConfigServer
  5. OKをクリックします。

成果物構成の探索

プロジェクトを作成するときに、Webアプリケーションを開発することにしました。その結果、IntelliJ IDEAは、とりわけ、Webアプリケーション成果物を構築するための構成を作成しました。この構成を見てみましょう。

  1. プロジェクト構造ダイアログを開きます:ファイル | プロジェクト構造または Ctrl+Shift+Alt+S

  2. プロジェクト設定で、成果物を選択します。

    使用可能なアーティファクト構成は、icons general add および icons general removeの右側のペインに表示されます。(現時点では1つの設定しかありません。)

    HWJEE032ProjectStructureArtifacts

    アーティファクト設定はダイアログの右側に表示されます。

    HWJEE033ProjectStructureArtifactSettings

    タイプ。成果物タイプはWebです。Application:Exploded。これは解凍されたWebアプリケーションアーカイブ(WAR)です。これはデプロイからWebサーバーへの準備ができたディレクトリ構造です。

    出力ディレクトリ。アーティファクトは、構築時に <project_folder>/out/artifacts/JavaEEHelloWorld_war_explodedに配置されます。

    出力レイアウト。成果物構造は、出力レイアウトタブの左側のペインに表示されます。

    <output root>は出力ディレクトリに対応します。他の要素は、以下の意味を有します。

    • 'JavaEEHelloWorld' コンパイル出力は、ソースが src ディレクトリにあるコンパイル済みのJavaクラスを表します。これらは、出力ディレクトリの WEB-INF/classes に配置されます。

    • 'Web' ファセットリソースは、web ディレクトリの内容を表します。

アプリケーションをWARファイルにパッケージ化する

アプリケーションに満足している段階になると、WAR(英語)(Webアプリケーションアーカイブ)に配置することができます。これを行うには、適切な成果物構成を作成し、成果物を構築する必要があります。

  1. icons general addをクリックし、Web アプリケーション: アーカイブをポイントして'JavaEEHelloWorld: warを選択します。
    HWJEE034ProjectStructureNewArtifact

    新しいアーティファクト構成が作成され、その設定がダイアログの右側に表示されます。

    HWJEE035ProjectStructureNewArtifactSettings
  2. アーカイブ用のマニフェストファイルを作成します。マニフェストの作成をクリックし、IntelliJ IDEA web/META-INF/MANIFEST.MFによって提案された場所に同意します。

  3. プロジェクト構造ダイアログでOKをクリックします。

  4. ビルド | ビルド成果物を選択します。

    HWJEE036BuildArtifacts

  5. ビルド成果物ポップアップで、JavaEEHelloWorld:warをポイントし、ビルドを選択します。
    HWJEE037BuildArtifactPopup

    out/artifacts/JavaEEHelloWorld_war フォルダーを見ると、そこにアーカイブが表示されます。

    HWJEE038ArtifactInProjectToolWindow

実行中のサーバーにアーティファクトをデプロイする

実行中のサーバーにアプリをデプロイする必要があることがあります。ここでは、使い方の例を示します。

サーバーを始動しないサーバー実行構成はリモートと呼ばれます。このような実行構成は、たとえば、すでに実行されているサーバーにアプリケーションをデプロイするために使用できます。(ローカルおよびリモートの実行構成を参照してください。)

実行中のサーバーにWARアーティファクトをデプロイするための実行構成を作成し、その動作を確認しましょう。(ここまでに、サーバーは前述の実行構成によって開始されました。)

  1. 実行構成セレクタをクリックし、構成の編集を選択します。

    HWJEE026EditConfigurations

  2. icons general addをクリックし、GlassFish サーバーをポイントしてリモートを選択します。

    HWJEE039NewRemoteServerRunConfig

  3. (たとえばGlassFishRemote)より実用的なものに名前の実行構成の名前を変更します。

    HWJEE040RunConfigName

  4. サーバーにデプロイする成果物を指定します。デプロイタブを選択し、icons general add をクリックして成果物を選択します。
    HWJEE041DeploymentPlusArtifact

    表示されたダイアログで、WARアーティファクトを選択します。

    HWJEE042SelectArtifact

    結果は次のようになります。

    HWJEE043ArtifactDefined
  5. 実行/デバッグ構成ダイアログでOKをクリックします。

    次に、この実行構成がどのように機能するかを見てみましょう。

  6. 実行構成を実行します: icons toolwindows toolWindowRunをクリックします。
    HWJEE044Run

    実行構成の出力は、実行ツールウィンドウに表示されます。

    HWJEE045RunToolWindow

    しばらくすると、Webブラウザの新しいタブが開き、そこにアプリケーションの出力が表示されます。

    HWJEE046HelloInBrowser

アプリケーションをEARにパッケージ化する: Java EEアプリケーションのサポートの使用

Java EEアプリケーションをEAR(英語)にパッケージ化するには、以下を行う必要があります。

  1. Java EE デプロイ記述子(英語) application.xmlを作成します。

  2. EAR 成果物を構成します。

  3. そのアーティファクトを構築します。

IntelliJ IDEAは、Java EEアプリケーションのサポートの一環として、これらのタスクのほとんどを実行します。

  1. プロジェクトツールウィンドウで、モジュールフォルダーを右クリックし、フレームワークのサポートを選択します。

    HWJEE051AddFrameworkSupport

  2. 表示されるダイアログで、JavaEE アプリケーションチェックボックスを選択し、OKをクリックします。
    HWJEE052JavaEEAppSupport

    モジュールフォルダーに作成された記述子ファイル META-INF/application.xml に注意してください。

    HWJEE053AppXMLInProject
  3. エディター F4でファイルを開きます。
    HWJEE054AppXMLInEditor

    現時点では、ファイルはほとんど空です。

  4. 次に、アーティファクトの設定を見てみましょう。

    新しい構成が現れました。これは、展開されたEAR成果物のものです。

    HWJEE055Artifacts

    現在、JavaEEアプリケーションファセットリソース META-INF/application.xml のみがアーティファクトに含まれています。

    HWJEE056ExplodedEARInitial
  5. 展開されたWARアーティファクトのコピーをEARアーティファクト構造に追加しましょう。これを行うには、使用可能な要素で、成果物ノードを展開し、展開されたWARアーティファクトをダブルクリックします。ここに結果があります。
    HWJEE057ExplodedEARWithWAR

    (同じ結果を得る別の方法は、icons general add | 成果物 | JavaEEHelloWorld: war 展開です。)

  6. メッセージWebファセットはapplication.xmlに登録されていませんに注意してください。修復をクリックします。(少し後で、この簡単な修正によって application.xml に加えられた変更を見ていきます。)

  7. EAR成果物の構成を作成します: icons general add | JavaEE アプリケーション: アーカイブ | 'JavaEEHelloWorld:ear 展開' の場合

    HWJEE058NewEAR

  8. マニフェストファイルを作成するには、マニフェストの作成をクリックしてデフォルトのファイルの場所 <project_folder>/META-INF/MANIFEST.MFに同意します。

    HWJEE059EARStructure

  9. プロジェクト構造ダイアログでOKをクリックします。

    application.xml が変更されていることを確認してください。これはクイックフィックスを適用した結果です。

    HWJEE060AppXMLChanged

    ここで、EAR成果物の構築とデプロイのための実行構成を作成しましょう。

  10. 実行構成セレクタをクリックし、構成の編集を選択します。次に、実行/デバッグ構成ダイアログで、icons general add | GlassFish サーバー | リモートを選択します。

  11. 実行構成にわかりやすい名前を指定します。GlassFishRemoteEAR

    HWJEE061NewRunConfigName

  12. デプロイリストにEARアーティファクトを含めます:デプロイタブに切り替え、icons general add | 成果物 | JavaEEHelloWorld:earを選択します。

    'JavaEEHelloWorld:ear' アーティファクトのビルドタスクは自動的に起動前タスクリストに含まれます。

    HWJEE062RunConfigDeployEAR
  13. サーバータブに切り替えて、ブラウザーを開くセクションのURLを確認してください。 http://localhost:8080/ に続く部分は、application.xml<context-root> 要素に対応しているはずです。

    HWJEE063RunConfigURL

  14. 実行/デバッグ構成ダイアログでOKをクリックします。

  15. 実行構成 icons toolwindows toolWindowRunを実行します。

    前と同じように、実行ツールウィンドウに別のタブが開き、実行構成の出力が表示されます。

    HWJEE064RunEAR

    次に、アプリケーションの出力がブラウザに表示されます。

    HWJEE065EARHelloInBrowser

    プロジェクトツールのウィンドウを見ると、out/artifacts/JavaEEHelloWorld_ear フォルダーにアーカイブが表示されます。

    HWJEE066EARInProject

他の機能を見る (ツールウィンドウとファセット)

WebアプリケーションとJava EEアプリケーションのサポートの一環として、IntelliJ IDEA:

  • WebおよびJavaEE:Appツールウィンドウを利用可能にしました。

  • WebおよびJava EEアプリケーションのファセットを作成しました。

ツール・ウィンドウ。ツールウィンドウを開くには、たとえば表示 | ツール・ウィンドウ | Webまたは表示 | ツール・ウィンドウ | JavaEE:Appを選択します。

非常に簡単に言えば、WebJavaEE:Appのツールウィンドウは、プロジェクトツールウィンドウの機能と似ていますが、それぞれあなたのWebとJava EEアプリケーションのファセットリソースにしか対応していません。詳細については、以下を参照してください。

ファセット。ファセット設定を表示または編集するには、プロジェクト構造ダイアログを開き、モジュールを選択してから、モジュールノードのWebまたはjavaEEApplicationを選択します。詳しくは、以下を参照してください。

最終更新日: 2020年7月7日

関連ページ:

SDK

ソフトウェア開発キットまたはSDKは、特定のソフトウェアフレームワーク用のアプリケーションを開発するために必要なツールのコレクションです。例:Javaでアプリケーションを開発するには、Java SDK(JDK)が必要です。SDKには、バイナリ、バイナリのソースコード、およびソースコードのドキュメント...

アーティファクトを操作する

このページで:成果物とは何ですか?、アーティファクト構成を操作する、ビルド成果物、ビルド・オプション (ビルド、リビルドなど)、JARアーティファクトを実行する、アーティファクトをアプリケーションサーバーとクラウドプラットフォームにデプロイする、サンプル、プロジェクトの構造/成果物も参照してください...

アプリケーションサーバー上のアプリケーションを更新する

この機能はUltimateエディションでのみサポートされています。Java EEまたはWebアプリケーションを実行またはデバッグする際には、ソースコードを変更して、ほとんどの場合、変更の結果を確認することができます。アプリケーションの更新: プロセスの概要、アプリケーション更新オプションの指定、アプ...

Google App Engineを使ってみる

IntelliJ IDEAでは、Google App Engineプロジェクトを作成し、アプリケーションをGoogleのインフラストラクチャにアップロードできます。始める前に、Google App Engineプロジェクトの作成、プロジェクト構造のチェック、アプリケーションの実行、アプリケーションの...