11 Mavenを使用したOracle Coherenceプロジェクトのビルド

Oracle Coherence原型を使用して、archetypesアプリケーションを作成、ビルドおよびデプロイすることができます。

トピック:

Mavenを使用したOracle Coherenceプロジェクトのビルドの概要

Oracle Fusion Middlewareでは、Mavenプラグインおよび原型がOracle Coherenceグリッド・アーカイブ(GAR)プロジェクト用に提供されています。

表11-1に、Maven座標を示します。

表11-1 CoherenceでのMaven座標

アーティファクト groupId artifactId バージョン

GARプラグイン

com.oracle.coherence

gar-maven-plugin

12.2.1-0-0

GAR原型

com.oracle.coherence.archetype

gar-maven-archetype

12.2.1-0-0

表11-2に、Oracle Coherenceプラグインでサポートされているゴールを示します。

表11-2 Oracle Coherenceのゴール

ゴール 用途

generate-descriptor

プロジェクトのPOF構成ファイルを生成します。

package

ライブラリ依存性を含む基本的なGARアセットをJARアーカイブにパッケージ化します。

repackage

パッケージ化されたJARアーカイブをオプションのメタデータおよびGAR拡張を使用して再パッケージ化します。

Maven原型からのCoherenceプロジェクトの作成

Coherence Maven原型を使用して、新しいCoherenceプロジェクトを作成できます。

  1. Coherence Maven原型を使用して新規Coherenceプロジェクトを作成するには、次のようなコマンドを発行してください。
    mvn archetype:generate
        -DarchetypeGroupId=com.oracle.coherence.archetype
        -DarchetypeArtifactId=gar-maven-archetype
        -DarchetypeVersion=12.2.1-0-0
        -DgroupId=org.mycompany
        -DartifactId=my-gar-project
        -Dversion=1.0-SNAPSHOT
    

    このコマンドにより、Mavenのarchetype:generateゴールが実行され、原型から新規プロジェクトを作成できます。表11-3に、パラメータを示します。

    表11-3 Coherenceプロジェクトのパラメータ

    パラメータ 用途

    archetypeGroupId

    新規プロジェクトの作成に使用する原型のgroup ID。これは、com.oracle.coherence.archetypeである必要があります。

    archetypeArtifactId

    新規プロジェクトの作成に使用する原型のartifact ID。これは、gar-maven-archetypeである必要があります。

    archetypeVersion

    新規プロジェクトの作成に使用する原型のバージョン。これは、12.2.1-0-0である必要があります。

    groupId

    新規プロジェクトのgroup ID。通常、これは組織のドメイン名を逆にした形式で始まります。

    artifactId

    新規プロジェクトのartifact ID。通常、これはプロジェクトの識別子です。

    version

    新規プロジェクト用のversion。新規プロジェクトの場合、これは通常1.0-SNAPSHOTです。

    また、次の例に示すように、引数なしでコマンドを実行することもできます。この場合、Mavenでは、使用可能な原型のリストが表示され、必要な情報の入力を求められます。

    mvn archetype:generate
    

    プロジェクトの作成後、プロジェクトには次のファイルが含まれます。

    表11-4ではプロジェクトに含まれるファイルについて説明します。

    表11-4 Coherenceプロジェクト用に作成されるファイル

    ファイル 用途

    pom.xml

    新規プロジェクトについて記述するMavenプロジェクト・オブジェクト・モデル(POM)ファイル。プロジェクトに指定したMaven座標が含まれ、Coherence Mavenプラグインを使用してプロジェクトをgarファイルにビルドするための適切なプラグイン定義も含まれます。

    cache-config.xml

    初期Coherenceキャッシュ構成ファイルです。

    coherence-application.xml

    GARファイルの初期Coherence GARデプロイメント・ディスクリプタです。

    pof-config.xml

    初期Coherence Portable Object Format (POF)構成ファイルです。プラグイン・オプションgeneratePofが「true」に設定されている場合、POF構成ファイルは処理され、最終GARファイルに挿入されます。デフォルトでは、POF構成メタデータは生成されません。

  2. プロジェクトでPOFを使用する場合は、次のパラメータをプロジェクトのPOMファイルに追加する必要があります。
    パラメータ 用途

    generatePof

    このプラグイン・オプションがtrueである場合は、POF構成ファイルが生成され、最終GARファイルに挿入されます。構成ファイルは、GARのクラスパスでクラスcom.tangosol.io.pof.annotation.Portableが注釈付けされたすべてのクラスをスキャンして生成されます。デフォルトでは、POF構成メタデータは生成されません。

  3. 適切に生成されたpof-config.xmlを使用してGARを生成するには、POMのGARプラグイン構成ファイルに次を追加します。
    <build>
    <plugins>
    …
        <plugin>
          <groupId>com.oracle.coherence</groupId>
          <artifactId>gar-maven-plugin</artifactId>
          <version>12.2.1-0-0</version>
          <extensions>true</extensions>
          <configuration>
             <generatePof>true</generatePof>
          </configuration>
        </plugin>
    …
      </plugins>
    </build>

Mavenを使用したCoherenceプロジェクトのビルド

プロジェクト・コードを記述した後に、Mavenを使用してプロジェクトをビルドできます。

  1. プロジェクトのソース・コードをコンパイルするには、次のコマンドを実行します。
    mvn compile
    
  2. コンパイル済のソースをGARにパッケージ化するには、次のコマンドを実行します。このコマンドにより、パッケージ化までのすべてのステップ(コンパイルを含む)が実行されることに注意してください。
    mvn package

Mavenを使用したWebLogic Server Coherence ContainerへのCoherenceプロジェクトのデプロイ

GARをWebLogic Server環境のCoherence Containerにデプロイするには、いくつかの追加構成をプロジェクトのPOMファイルに追加する必要があります。

次のステップを実行します。

  1. 次の例に示すように、Oracle WebLogic Mavenプラグインを使用してGARをデプロイする命令を追加します。
              <plugin>
                <groupId>com.oracle.weblogic</groupId>
                <artifactId>weblogic-maven-plugin</artifactId>
                <version>12.2.1-0-0</version>
                <executions>
                  <!--Deploy the application to the server-->
                  <execution>
                    <phase>pre-integration-test</phase>
                    <goals>
                      <goal>deploy</goal>
                    </goals>
                    <configuration>
                      <adminurl>t3://localhost:7001</adminurl>
                      <user>weblogic</user>
                      <password>'password'</password>
                      <!--The location of the file or directory to be deployed-->
                      <source>${project.build.directory}/${project.build.finalName}.${project.packaging}</source>
                      <!--The target servers where the application is deployed-->
                      <targets>AdminServer</targets>
                      <verbose>true</verbose>
                      <name>${project.build.finalName}</name>
                    </configuration>
                  </execution>
                </executions>
              </plugin>
    
  2. このセクションをPOMに追加した後、次のコマンドを使用してGARをコンパイルおよびパッケージ化し、WebLogic Serverにデプロイします。
    mvn verify

さらに詳細なCoherence例のビルド

実際のアプリケーションでは、GARプロジェクトだけでなく、GARで確立されたCoherenceキャッシュを操作するなんらかのクライアント・プロジェクトも存在する場合があります。

Coherence GARおよびCoherence GARと相互作用するWebアプリケーション(WAR)が含まれた例については、Mavenを使用した実際のアプリケーションのビルドを参照してください。