検索

第2章 JBoss EAP での Maven の使用

download PDF

2.1. Maven について

2.1.1. Maven リポジトリー

Apache Maven は、ソフトウェアプロジェクトの作成、管理、および構築を行う Java アプリケーションの開発で使用される分散型ビルド自動化ツールです。Maven は Project Object Model (POM) と呼ばれる標準の設定ファイルを利用して、プロジェクトの定義や構築プロセスの管理を行います。POM はモジュールやコンポーネントの依存関係、ビルドの順番、結果となるプロジェクトパッケージングのターゲットを定義し、XML ファイルを使用して出力します。この結果、プロジェクトが適切かつ統一された状態で構築されるようになります。

Maven は、リポジトリーを使用してアーカイブを行います。Maven リポジトリーには Java ライブラリー、プラグイン、その他のビルドアーティファクトが格納されています。デフォルトのパブリックリポジトリーは Maven 2 Central Repository ですが、複数の開発チームの間で共通のアーティファクトを共有する目的で、社内のプライベートおよび内部リポジトリーとすることが可能です。また、サードパーティーのリポジトリーもあります。JBoss EAP には、Java EE 開発者が JBoss EAP 6 でアプリケーションを構築する際に利用する要件の多くが含まれる Maven リポジトリーが含まれます。このリポジトリーを使用するようプロジェクトを設定するには、JBoss EAP Maven リポジトリーの設定を参照してください。

Maven の詳細については、Welcome to Apache Maven を参照してください。

Maven リポジトリーの詳細については、Apache Maven Project - Introduction to Repositories を参照してください。

2.1.2. Maven POM ファイル

プロジェクトオブジェクトモデル (POM) ファイルはプロジェクトをビルドするために Maven で使用する設定ファイルです。POM ファイルは XML のファイルであり、プロジェクトの情報やビルド方法を含みます。これには、ソース、テスト、およびターゲットのディレクトリーの場所、プロジェクトの依存関係、プラグインリポジトリー、実行できるゴールが含まれます。また、バージョン、説明、開発者、メーリングリスト、ライセンスなどのプロジェクトに関する追加情報も含まれます。pom.xml ファイルでは一部の設定オプションを設定する必要があり、他のすべてのオプションはデフォルト値に設定されます。

pom.xml ファイルのスキーマは http://maven.apache.org/maven-v4_0_0.xsd にあります。

POM ファイルの詳細については、Apache Maven Project POM Reference を参照してください。

Maven POM ファイルの最低要件

pom.xml ファイルの最低要件は次のとおりです。

  • プロジェクトルート
  • modelVersion
  • groupId - プロジェクトのグループの ID
  • artifactId - アーティファクト (プロジェクト) の ID
  • version - 指定したグループ下のアーティファクトのバージョン

例: サンプル pom.xml ファイル

基本的な pom.xml ファイルは次のようになります。

<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.jboss.app</groupId>
  <artifactId>my-app</artifactId>
  <version>1</version>
</project>

2.1.3. Maven 設定ファイル

Maven の settings.xml ファイルには Maven に関するユーザー固有の設定情報が含まれています。開発者の ID、プロキシ情報、ローカルリポジトリーの場所など、 pom.xml ファイルで配布されてはならないユーザー固有の情報が含まれています。

settings.xml が存在する場所は 2 つあります。

  • Maven インストール: 設定ファイルは $M2_HOME/conf/ ディレクトリーにあります。これらの設定は global 設定と呼ばれます。デフォルトの Maven 設定ファイルはコピー可能なテンプレートであり、これを基にユーザー設定ファイルを設定することが可能です。
  • ユーザーのインストール: 設定ファイルは ${user.home}/.m2/ ディレクトリーにあります。 Maven とユーザーの settings.xml ファイルが存在する場合、内容はマージされます。重複する内容がある場合は、ユーザーの settings.xml ファイルが優先されます。

例: Maven 設定ファイル

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <profiles>
    <!-- Configure the JBoss EAP Maven repository -->
    <profile>
      <id>jboss-eap-maven-repository</id>
      <repositories>
        <repository>
          <id>jboss-eap</id>
          <url>file:///path/to/repo/jboss-eap-7.0.0.GA-maven-repository/maven-repository</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>jboss-eap-maven-plugin-repository</id>
          <url>file:///path/to/repo/jboss-eap-7.0.0.GA-maven-repository/maven-repository</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
  </profiles>
  <activeProfiles>
    <!-- Optionally, make the repository active by default -->
    <activeProfile>jboss-eap-maven-repository</activeProfile>
  </activeProfiles>
</settings>

settings.xml ファイルのスキーマは http://maven.apache.org/xsd/settings-1.0.0.xsd にあります。

2.1.4. Maven リポジトリーマネージャー

リポジトリーマネージャーは、 Maven リポジトリーを容易に管理できるようにするツールです。リポジトリーマネージャーには、次のような利点があります。

  • ユーザーの組織のリポジトリーとリモート Maven リポジトリーとの間のプロキシを設定する機能を提供します。これには、デプロイメントの高速化や効率化、Maven によるダウンロード対象を制御するレベルの向上など、さまざまな利点があります。
  • 独自に生成したアーティファクトのデプロイ先を提供し、組織内の異なる開発チーム間におけるコラボレーションを可能にします。

Maven リポジトリーマネージャーの詳細については、Best Practice - Using a Repository Manager を参照してください。

一般的に使用される Maven リポジトリーマネージャー
Sonatype Nexus
Nexus の詳細については、Sonatype Nexus documentation を参照してください。
Artifactory
Artifactory の詳細については、JFrog Artifactory ドキュメンテーションを参照してください。
Apache Archiva
Apache Archiva の詳細については、Apache Archiva: The Build Artifact Repository Manager を参照してください。
注記

通常リポジトリーマネージャーが使用されるエンタープライズ環境では、Maven は、このマネージャーを使用してすべてのプロジェクトに対してすべてのアーティファクトを問い合わせる必要があります。Maven は、宣言されたすべてのリポジトリーを使用して不明なアーティファクトを見つけるため、探しているものが見つからない場合に、centralリポジトリー (組み込みの親 POM で定義されます) で検索を試行します。この central の場所をオーバーライドするには、central で定義を追加してデフォルトの central リポジトリーがリポジトリーマネージャーになるようにします。これは、確立されたプロジェクトには適切ですが、クリーンな、または「新しい」プロジェクトの場合は、周期的な依存関係が作成されるため、問題が発生します。

2.2. Maven と JBoss EAP Maven リポジトリーのインストール

2.2.1. Maven のダウンロードとインストール

Maven コマンドラインを使用してアプリケーションをビルドし、JBoss EAP にデプロイする場合は、Maven をダウンロードし、インストールする必要があります。Red Hat JBoss Developer Studio を使用してアプリケーションをビルドおよびデプロイする場合、Maven は Red Hat JBoss Developer Studio で配布されるため、この手順を省略できます。

  1. Apache Maven Project - Download Maven にアクセスし、ご使用のオペレーティングシステムに対応する最新のディストリビューションをダウンロードします。
  2. ご使用のオペレーシングシステムに Apache Maven をダウンロードおよびインストールする方法については、Maven のドキュメントを参照してください。

2.2.2. JBoss EAP の Maven リポジトリーのインストール

JBoss EAP Maven リポジトリーをインストールする方法は 3 つあります。

注記

JBoss EAP Maven リポジトリーはオンラインで利用したり、示された 3 つのいずれかの方法でダウンロードし、ローカルにインストールしたりできます。

2.2.3. JBoss EAP Maven リポジトリーのローカルインストール

この例では、ローカルのファイルシステムへ JBoss EAP Maven リポジトリーをダウンロードする手順を取り上げます。このオプションは簡単に設定できます。このオプションを使用すると、ローカルマシンですぐに使用を開始できます。開発で Maven の使用方法を理解するのに役に立ちますが、チームによる実稼働環境での使用には推奨されません。

JBoss EAP Maven リポジトリーをダウンロードし、ローカルファイルシステムにインストールするには、以下の手順に従ってください。

  1. Web ブラウザーを開き、URL https://access.redhat.com/jbossnetwork/restricted/listSoftware.html?product=appplatform にアクセスします。
  2. リストに Red Hat JBoss Enterprise Application Platform 7.0 Maven Repository があることを確認します。
  3. ダウンロード ボタンをクリックし、リポジトリーが含まれる .zip ファイルをダウンロードします。
  4. ローカルファイルシステム上の Zip 形式のファイルを希望のディレクトリーで展開します。

    これにより、maven-repository/ という名前のサブディレクトリーに Maven レポジトリーが含まれる新しい jboss-eap-7.0.0.GA-maven-repository/ ディレクトリーが作成されます。

重要

古いローカルリポジトリーを引き続き使用する場合は、そのリポジトリーを Maven settings.xml 設定ファイルで個別に設定する必要があります。各ローカルリポジトリーは、独自の <repository> タグ内で設定する必要があります。

重要

新しい Maven リポジトリーをダウンロードする場合は、使用する前に、.m2/ ディレクトリーにあるキャッシュされた repository/ サブディレクトリーを削除してください。

2.2.4. Apache httpd で使用する JBoss EAP Maven レポジトリーのインストール

この例では、Apache httpd で使用する JBoss EAP Maven リポジトリーをダウンロードする手順を示します。Web サーバーにアクセスできる開発者は Maven リポジトリーにもアクセスできるため、このオプションはマルチユーザーの開発環境や複数のチームにまたがる開発環境に適しています。

注記

最初に Apache httpd を設定する必要があります。手順については、Apache HTTP Server Project ドキュメンテーションを参照してください。

  1. Web ブラウザーを開き、URL https://access.redhat.com/jbossnetwork/restricted/listSoftware.html?product=appplatform にアクセスします。
  2. リストに Red Hat JBoss Enterprise Application Platform 7.0 Maven Repository があることを確認します。
  3. ダウンロード ボタンをクリックし、リポジトリーが含まれる .zip ファイルをダウンロードします。
  4. Apache サーバー上で Web にアクセス可能なディレクトリーに Zip 形式のファイルを展開します。
  5. 作成されたディレクトリーで読み取りアクセスとディレクトリーの閲覧を許可するよう Apache を設定します。

    この設定により、マルチユーザー環境が Apache httpd 上で Maven リポジトリーにアクセスできるようになります。

2.3. Maven リポジトリーの使用

2.3.1. JBoss EAP Maven リポジトリーの設定

概要

プロジェクトで JBoss EAP Maven リポジトリーを使用するよう Maven に指示する方法は 2 つあります。

Maven 設定を使用した JBoss EAP Maven リポジトリーの設定

これは推奨される方法です。リポジトリーマネージャーや共有サーバー上のリポジトリーを使用して Maven を設定すると、プロジェクトの制御および管理を行いやすくなります。また、代替のミラーを使用してプロジェクトファイルを変更せずにリポジトリーマネージャーに特定のリポジトリーのルックアップ要求をすべてリダイレクトすることも可能になります。ミラーの詳細については、http://maven.apache.org/guides/mini/guide-mirror-settings.html を参照してください。

プロジェクトの POM ファイルにリポジトリー設定が含まれていない場合、この設定方法はすべての Maven プロジェクトに対して適用されます。

この項では、Maven の設定方法について説明します。Maven インストールグローバル設定またはユーザーのインストール設定を指定できます。

Maven 設定ファイルの指定

  1. 使用しているオペレーションシステムの Maven settings.xml ファイルを見つけます。通常、このファイルは ${user.home}/.m2/ ディレクトリーにあります。

    • Linux または Mac の場合、これは ~/.m2/ になります。
    • Windows の場合、これは \Documents and Settings\.m2\ または \Users\.m2\ になります。
  2. settings.xml ファイルが見つからない場合は、${user.home}/.m2/conf/ ディレクトリーの settings.xml ファイルを ${user.home}/.m2/ ディレクトリーへコピーします。
  3. 以下の XML を <profiles> element of the settings.xml ファイルにコピーします。JBoss EAP リポジトリーの URL を調べJBOSS_EAP_REPOSITORY_URL をその URL に置き換えます。

    <!-- Configure the JBoss Enterprise Maven repository -->
    <profile>
      <id>jboss-enterprise-maven-repository</id>
      <repositories>
        <repository>
          <id>jboss-enterprise-maven-repository</id>
          <url>JBOSS_EAP_REPOSITORY_URL</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>jboss-enterprise-maven-repository</id>
          <url>JBOSS_EAP_REPOSITORY_URL</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>

    以下に、オンラインの JBoss EAP Maven リポジトリーにアクセする設定例を示します。

    <!-- Configure the JBoss Enterprise Maven repository -->
    <profile>
      <id>jboss-enterprise-maven-repository</id>
      <repositories>
        <repository>
          <id>jboss-enterprise-maven-repository</id>
          <url>https://maven.repository.redhat.com/ga/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>jboss-enterprise-maven-repository</id>
          <url>https://maven.repository.redhat.com/ga/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
  4. 次の XML を settings.xml ファイルの <activeProfiles> 要素へコピーします。

    <activeProfile>jboss-enterprise-maven-repository</activeProfile>
  5. Red Hat JBoss Developer Studio の実行中に settings.xml ファイルを変更する場合は、ユーザー設定を更新する必要があります。

    1. メニューで Window Preferences と選択します。
    2. Preferences ウィンドウで Maven を展開し、User Settings を設定します。
    3. Update Settings ボタンをクリックし、Red Hat JBoss Developer Studio で Maven のユーザー設定を更新します。

      Maven ユーザー設定の更新 のスクリーンショット

      Maven ユーザー設定の更新 のスクリーンショット

重要

Maven リポジトリーに古いアーティファクトが含まれる場合は、プロジェクトをビルドまたはデプロイしたときに以下のいずれかの Maven エラーメッセージが表示されることがあります。

  • Missing artifact ARTIFACT_NAME
  • [ERROR] Failed to execute goal on project PROJECT_NAME; Could not resolve dependencies for PROJECT_NAME

この問題を解決するには、最新の Maven アーティファクトをダウンロードするためにローカルリポジトリーのキャッシュバージョンを削除します。キャッシュバージョンは ${user.home}/.m2/repository/ に存在します。

プロジェクト POM を使用した JBoss EAP Maven リポジトリーの設定
警告

この設定方法は、設定されたプロジェクトのグローバルおよびユーザー Maven 設定を上書きするため、回避する必要があります。

プロジェクト POM ファイルを使用してリポジトリーを設定する場合は、慎重に計画する必要があります。このような設定では、推移的に含まれた POM が問題になります。Maven は、外部リポジトリーで不明なアーティファクトを問い合わせ、これによりビルド処理に時間がかかるようになるためです。また、アーティファクトの抽出元を制御できなくなることもあります。

注記

リポジトリーの URL はリポジトリーの場所 (ファイルシステムまたは Web サーバー) によって異なります。リポジトリーのインストール方法については、JBoss EAP の Maven リポジトリーのインストールを参照してください。各インストールオプションの例は次のとおりです。

ファイルシステム
file:///path/to/repo/jboss-eap-maven-repository
Apache Web Server
http://intranet.acme.com/jboss-eap-maven-repository/
Nexus リポジトリーマネージャー
https://intranet.acme.com/nexus/content/repositories/jboss-eap-maven-repository

プロジェクトの POM ファイルの設定

  1. テキストエディターでプロジェクトの pom.xml ファイルを開きます。
  2. 次のリポジトリー設定を追加します。すでにファイルに <repositories> 設定が存在する場合は <repository> 要素を追加します。必ず <url> を実際のリポジトリーの場所に変更するようにしてください。
<repositories>
   <repository>
      <id>jboss-eap-repository-group</id>
      <name>JBoss EAP Maven Repository</name>
      <url>JBOSS_EAP_REPOSITORY_URL</url>
      <layout>default</layout>
      <releases>
         <enabled>true</enabled>
         <updatePolicy>never</updatePolicy>
      </releases>
      <snapshots>
         <enabled>true</enabled>
         <updatePolicy>never</updatePolicy>
      </snapshots>
   </repository>
</repositories>
  1. 次のプラグインリポジトリー設定を追加します。すでにファイルに <pluginRepositories> 設定が存在する場合は <pluginRepository> 要素を追加します。
<pluginRepositories>
   <pluginRepository>
      <id>jboss-eap-repository-group</id>
      <name>JBoss EAP Maven Repository</name>
      <url>JBOSS_EAP_REPOSITORY_URL</url>
      <releases>
         <enabled>true</enabled>
      </releases>
      <snapshots>
         <enabled>true</enabled>
      </snapshots>
   </pluginRepository>
</pluginRepositories>
JBoss EAP リポジトリーの URL の確認

リポジトリーの URL は、リポジトリーが存在する場所によって異なります。以下のいずれかのリポジトリーの場所を使用するよう Maven を設定できます。

  • オンラインの JBoss EAP Maven リポジトリーを使用するには、URL https://maven.repository.redhat.com/ga/ を指定します。
  • ローカルファイルシステムにインストールされた JBoss EAP Maven リポジトリーを使用するには、リポジトリーをダウンロードし、URL のローカルファイルパスを使用する必要があります (例: file:///path/to/repo/jboss-eap-7.0-maven-repository/maven-repository/)。
  • Apache Web Server にリポジトリーをインストールする場合、リポジトリーの URL は http://intranet.acme.com/jboss-eap-7.0-maven-repository/maven-repository/ のようになります。
  • Nexus リポジトリーマネージャーを使用して JBoss EAP Maven リポジトリーをインストールする場合、URL は https://intranet.acme.com/nexus/content/repositories/jboss-eap-7.0-maven-repository/maven-repository/ のようになります。
注記

リモートリポジトリーへのアクセスには、HTTP サーバーのリポジトリー用の http:// やファイルサーバーのリポジトリー用の file:// などの一般的なプロトコルが使用されます。

2.3.2. Red Hat JBoss Developer Studio で使用する Maven の設定

アプリケーションをビルドし、Red Hat JBoss Enterprise Application Platform にデプロイするのに必要なアーティファクトと依存関係は、パブリックリポジトリーでホストされます。アプリケーションをビルドするときにこのリポジトリーを使用するよう Maven を設定する必要があります。このトピックでは、Red Hat JBoss Developer Studio を使用してアプリケーションをビルドおよびデプロイする場合に Maven を設定する手順について説明します。

Maven は Red Hat JBoss Developer Studio で配布されるため、個別にインストールする必要がありません。ただし、JBoss EAP へのデプロイメントのために Java EE Web Project ウィザードで使用する Maven を設定する必要があります。以下の手順は、Red Hat JBoss Developer Studio 内から Maven 設定ファイルを編集して JBoss EAP で使用する Maven を設定する方法を示しています。

Red Hat JBoss Developer Studio での Maven の設定

  1. Window Preferences をクリックし、JBoss Tools を展開して、JBoss Maven Integration を選択します。

    Preferences ウィンドウの JBoss Maven 統合ペイン

    Preferences ウィンドウの JBoss Maven 統合ペイン

  2. Configure Maven Repositories をクリックします。
  3. Add Repository をクリックして JBoss Enterprise Maven リポジトリーを設定します。Add Maven Repository ダイアログで以下の手順を実行します。

    1. Profile IDRepository ID、および Repository Name の値を jboss-ga-repository に設定します。
    2. Repository URL の値を http://maven.repository.redhat.com/ga に設定します。
    3. Active by default チェックボックスをクリックして Maven リポジトリーを有効にします。
    4. OK をクリックします。

      Maven リポジトリーの追加

      Maven リポジトリーの追加

  4. リポジトリーを確認して、終了 をクリックします。

    Maven リポジトリーの確認

    Maven リポジトリーの確認

  5. "Are you sure you want to update the file MAVEN_HOME/settings.xml? というメッセージが表示されます。Yes をクリックして設定を更新します。OK をクリックしてダイアログを閉じます。

JBoss EAP Maven リポジトリーが Red Hat JBoss Developer Studio での使用向けに設定されます。

2.3.3. プロジェクト依存関係の管理

このトピックでは、Red Hat JBoss Enterprise Application Platform 向けの BOM (Bill of Materials) POM の使用方法について説明します。

BOM は、指定モジュールに対するすべてのランタイム依存関係のバージョンを指定する Maven pom.xml (POM) ファイルです。バージョン依存関係は、ファイルの依存関係管理セクションにリストされています。

プロジェクトは、groupId:artifactId:version (GAV) をプロジェクト pom.xml ファイルの依存関係管理セクションに追加し、<scope>import</scope> および <type>pom</type> 要素の値を指定して、BOM を使用します。

注記

多くの場合、プロジェクト POM ファイルの依存関係によって provided スコープが使用されます。これは、これらのクラスが実行時にアプリケーションサーバーによって提供され、ユーザーアプリケーションとともにパッケージ化する必要がないためです。

サポート対象の Maven アーティファクト

製品のビルドプロセスの一部として、JBoss EAP のすべてのランタイムコンポーネントは制御された環境でソースからビルドされます。これにより、バイナリーアーティファクトに悪意のあるコードが含まれないようにし、製品のライフサイクルが終了するまでサポートを提供できるようにします。これらのアーティファクトは、1.0.0-redhat-1 のように使用される -redhat バージョン修飾子によって簡単に識別可能です。

サポートされるアーティファクトをビルド設定 pom.xml ファイルに追加すると、ローカルビルドおよびテスト向けの適切なバイナリーアーティファクトがビルドで使用されるようになります。-redhat バージョンのアーティファクトは、サポートされるパブリック API の一部とは限らず、今後の改訂で変更されることがあります。サポートされるパブリック API の詳細については、本リリースに同梱されている JavaDoc ドキュメントを参照してください。

たとえば、サポートされているバージョンの Hibernate を使用するには、ビルド設定に以下のようなコードを追加します。

<dependency>
  <groupId>org.hibernate</groupId>
  <artifactId>hibernate-core</artifactId>
  <version>5.0.1.Final-redhat-1</version>
  <scope>provided</scope>
</dependency>

上記の例には、<version/> の値が含まれていることに注意してください。ただし、依存関係バージョンの設定には、Maven の依存関係管理を使用することが推奨されます。

依存関係管理

Maven には、ビルド全体で直接的および推移的な依存関係のバージョンを管理するメカニズムが含まれています。依存関係管理の使用に関する一般的な情報については、Apache Maven Project の Introduction to the Dependency Mechanism を参照してください。

サポートされる Red Hat の依存関係を 1 つ以上ビルドに直接使用しても、ビルドの推移的な依存関係がすべて Red Hat アーティファクトによって完全にサポートされるとは限りません。Maven のビルドでは、Maven の中央リポジトリーおよびその他の Maven リポジトリーから複数のアーティファクトソースの組み合わせが使用することが一般的です。

JBoss EAP Maven リポジトリーには、サポートされるすべての JBoss EAP バイナリーアーティファクトを指定する依存関係管理 BOM が含まれています。この BOM は、ビルドの直接的および推移的依存関係に対して、サポートされる JBoss EAP 依存関係の優先順位を決定するためにビルドで使用できます。つまり、推移的な依存関係が、サポートされる正しい依存関係バージョン (該当する場合) に対して管理されます。この BOM のバージョンは、JBoss EAP リリースのバージョンと一致します。

<dependencyManagement>
  <dependencies>
    ...
    <dependency>
      <groupId>org.jboss.bom</groupId>
      <artifactId>eap-runtime-artifacts</artifactId>
      <version>7.0.0.GA</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
    ...
  </dependencies>
</dependencyManagement>
注記

JBoss EAP 7 では、この BOM の名前が eap6-supported-artifacts から eap-runtime-artifacts に変更されました。この変更の目的は、この POM のアーティファクトが JBoss EAP ランタイムの一部であるが、必ずしもサポートされるパブリック API の一部ではないことを明確にすることです。一部の jar には、リリースごとに異なる場合がある 内部 API と機能が含まれます。

JBoss EAP Java EE 仕様の BOM

jboss-javaee-7.0 BOM には、JBoss EAP によって使用される Java EE 仕様の API JAR が含まれています。

この BOM をプロジェクトで使用するには、JSP のバージョンが含まれる GAV に対する依存関係と、アプリケーションのビルドおよびデプロイに必要なサーブレット API JAR を追加します。

以下の例では、1.0.3.Final-redhat-1 バージョンの jboss-javaee-7.0 BOM が使用されています。

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.jboss.spec</groupId>
      <artifactId>jboss-javaee-7.0</artifactId>
      <version>1.0.3.Final-redhat-1</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
    ...
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>org.jboss.spec.javax.servlet</groupId>
    <artifactId>jboss-servlet-api_3.1_spec</artifactId>
    <scope>provided</scope>
  </dependency>
  <dependency>
    <groupId>org.jboss.spec.javax.servlet.jsp</groupId>
    <artifactId>jboss-jsp-api_2.3_spec</artifactId>
    <scope>provided</scope>
  </dependency>
  ...
</dependencies>
JBoss EAP BOM とクイックスタート

クイックスタートは、Maven リポジトリーの主要なユースケース例を提供します。下表に、クイックスタートによって使用される Maven BOM を示します。

表2.1 クイックスタートによって使用される JBoss BOM
BOM アーティファクト IDユースケース

jboss-eap-javaee7

サポートされる JBoss EAP JavaEE 7 API と追加の JBoss EAP API jar

jboss-eap-javaee7-with-spring3

jboss-eap-javaee7 および推奨される Spring 3 バージョン

jboss-eap-javaee7-with-spring4

jboss-eap-javaee7 および推奨される Spring 4 バージョン

jjboss-eap-javaee7-with-tools

jboss-eap-javaee7 および Arquillian などの開発ツール

注記

ほとんどのユースケースに対して使用方法を単純にするために、JBoss EAP 6 のこれらの BOM は少ない数の BOM に統合されました。Hibernate、ロギング、トランザクション、メッセージング、および他のパブリック API jar は jboss-javaee7-eap に含まれるようになり、各ユースケースで個別の BOM が必要なくなりました。

以下の例では、7.0.0.GA バージョンの jboss-eap-javaee7 BOM が使用されています。

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.jboss.bom</groupId>
      <artifactId>jboss-eap-javaee7</artifactId>
      <version>7.0.0.GA</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
    ...
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <scope>provided</scope>
  </dependency>
  ...
</dependencies>
JBoss EAP クライアント BOM

クライアント BOM は、依存関係管理セクションを作成したり、依存関係を定義したりしません。クライアント BOM は他の BOM の集合体であり、リモートクライアントのユースケースに必要な依存関係のセットをパッケージ化するために使用されます。

wildfly-ejb-client-bom および wildfly-jms-client-bom の BOM は jboss-eap-javaee7 BOM により管理されるため、プロジェクト依存関係でバージョンを管理する必要はありません。

以下に wildfly-ejb-client-bom および wildfly-jms-client-bom クライアント BOM 依存関係をプロジェクトに追加する方法の例を示します。

<dependencyManagement>
  <dependencies>
    <!-- jboss-eap-javaee7: JBoss stack of the Java EE APIs and related components.  -->
    <dependency>
      <groupId>org.jboss.bom</groupId>
      <artifactId>jboss-eap-javaee7</artifactId>
      <version>7.0.0.GA</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
  ...
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>org.jboss.eap</groupId>
    <artifactId>wildfly-ejb-client-bom</artifactId>
    <type>pom</type>
  </dependency>
  <dependency>
    <groupId>org.jboss.eap</groupId>
    <artifactId>wildfly-jms-client-bom</artifactId>
    <type>pom</type>
  </dependency>
  ...
</dependencies>

Maven 依存関係および BOM POM ファイルの詳細については、Apache Maven Project - Introduction to the Dependency Mechanism を参照してください。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.