Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerUnresolved include directive in modules/ROOT/pages/mmp-concept.adoc - include::mule-runtime::partial$mmp-concept.adoc[]
Mule Maven プラグインでは、Mule アプリケーションのパッケージおよびデプロイメントを Maven ライフサイクルと統合できます。
パッケージ化の手順は、「Mule アプリケーションをパッケージする」を参照してください。
Mule Maven プラグインは Mule Runtime Engine (Enterprise Edition) および Mule Kernel (Community Edition) と互換性があります。
Mule Maven プラグインを使用すれば、次のデプロイメント戦略のいずれかを使用して、CloudHub、CloudHub 2.0、または Anypoint Runtime Fabric への、もしくはオンプレミスでの Mule アプリケーションのデプロイメントを自動化できます。
CloudHub デプロイメント
Mule アプリケーションを CloudHub にデプロイします。
手順は、「CloudHub へのアプリケーションのデプロイ」を参照してください。
CloudHub 2.0 デプロイメント
Mule アプリケーションを CloudHub 2.0 にデプロイします。
手順は、「CloudHub 2.0 へのアプリケーションのデプロイ」を参照してください。
Runtime Fabric デプロイメント
Anypoint Runtime Fabric に Mule アプリケーションをデプロイします。
手順は、「Anypoint Runtime Fabric へのアプリケーションのデプロイ」を参照してください。
Runtime Manager REST API デプロイメント
Runtime Manager REST API を使用してサーバーまたはサーバークラスターに Mule アプリケーションをデプロイします。
手順は、「Runtime Manager REST API を使用して Mule アプリケーションをデプロイする」を参照してください。
Runtime Manager エージェントデプロイメント
Runtime Manager エージェントを使用して Mule アプリケーションをデプロイします。
このデプロイメント戦略は、すべての Mule インスタンスが 1 つのアドレス空間にある場合のみ機能します。
手順は、「Runtime Manager エージェントを使用した Mule アプリケーションのデプロイ」を参照してください。
スタンドアロンランタイムデプロイメント
マシンで実行中の Mule インスタンスに Mule アプリケーションをデプロイします。
手順は、「スタンドアロン Mule Runtime Engine への Mule アプリケーションのデプロイ」を参照してください。
Mule Maven プラグインには 4 つの目標があります。
package
プロジェクトの jar ファイルを生成します。
deploy
任意のアプリケーションデプロイメント対象 (CloudHub、Runtime Fabric、またはオンプレミス) で自動的にアプリケーションをアップロードして起動します。
mule:deploy
指定された場所からアーティファクトをデプロイします。
mule:undeploy
任意のアプリケーションデプロイメント対象 (CloudHub、Runtime Fabric、またはオンプレミス) から自動的にアプリケーションを削除します。
各目標では、目的のプラグイン動作に固有のパラメーターを受け入れます。
コマンドラインからパラメーターを指定するには、パラメーター名の先頭に -D
を追加します。
package
目標では、アプリケーションの JAR ファイルが生成されます。この目標は、デフォルトで Maven ライフサイクルフェーズ: package
にバインドします。
省略可能なパラメーター
名前 | 型 | 説明 |
---|---|---|
|
boolean (ブール) |
ソースコードのみが含まれるアプリケーションの JAR ファイルを生成します。このプロパティは共有のみに使用します。 |
|
boolean (ブール) |
生成した JAR ファイル内にソースコードを添付します。 |
|
boolean (ブール) |
JAR ファイル内のすべてのアプリケーションの連動関係が含まれるリポジトリを生成しません。このプロパティは共有のみに使用します。 |
たとえば、package
目標を実行して attachMuleSources
パラメーターを設定するには、次のコマンドを実行します。
mvn package -DattachMuleSources
この目標では、アプリケーションの JAR ファイルを任意のアプリケーションデプロイメント対象にアップロードしてデプロイします。deploy 目標は、デフォルトで Maven ライフサイクルフェーズ: deploy
にバインドします。
省略可能なパラメーター
名前 | 型 | 説明 |
---|---|---|
|
String (文字列) |
アプリケーションの JAR ファイルをデプロイするパス。デフォルトでは、アプリケーションの |
|
boolean (ブール) |
このプラグインに、プラグイン設定で定義されたデプロイメント戦略を使用してデプロイするよう指示します。 |
たとえば、deploy
目標を実行して muleDeploy
パラメーターを設定するには、次のコマンドを実行します。
mvn deploy -DmuleDeploy
操作を実行する前に、Mule Maven プラグインをプロジェクトに追加する必要があります。
Unresolved include directive in modules/ROOT/pages/mmp-concept.adoc - include::mule-runtime::partial$mmp-concept.adoc[]
デプロイメント設定内で skip
パラメーターを true に設定することで、プラグイン実行をスキップできます。
<plugin>
Unresolved include directive in modules/ROOT/pages/mmp-concept.adoc - include::mule-runtime::example$mmp-concept-config.xml[]
<configuration>
<standaloneDeployment>
<muleHome>${mule.home.test}</muleHome>
<skip>true</skip>
</standaloneDeployment>
</configuration>
</plugin>
任意のプラットフォームデプロイメント (Cloudhub、Runtime Manager、Runtime Fabric) 内で skipDeploymentVerification
パラメーターを true に設定することで、状況検証をスキップできます。
<plugin>
Unresolved include directive in modules/ROOT/pages/mmp-concept.adoc - include::mule-runtime::example$mmp-concept-config.xml[]
<configuration>
<runtimeFabricDeployment>
...
<skipDeploymentVerification>true</skipDeploymentVerification>
...
</runtimeFabricDeployment>
</configuration>
</plugin>
skipDeploymentVerification
パラメーターが存在しない場合、デフォルト値は false です。
この機能は、プラグインバージョン 3.2.5 以降で使用できます。
共有ライブラリでは、アプリケーションの連動関係を設定し、この連動関係をアプリケーション内のすべてのコネクタからアクセス可能にできます。
この機能の詳細な説明は、「Shared Libraries (共有ライブラリ)」を参照してください。
連動関係を共有ライブラリとして設定するには、プロジェクトの pom.xml
ファイルの Mule Maven プラグイン設定内に次の要素を追加します。
<sharedLibraries>
<sharedLibrary>
<groupId>${dependencyGroupID}</groupId>
<artifactId>${dependencyArtifactID}</artifactId>
</sharedLibrary>
</sharedLibraries>
次の例では、プロジェクトのデータベース用 Anypoint Connector (Database Connector) を設定し、さらに MySQL ドライバーを共有ライブラリとして設定しています。
<build>
<plugins>
<!-- Mule Maven Plugin configuration -->
<plugin>
<groupId>org.mule.tools.maven</groupId>
<artifactId>mule-maven-plugin</artifactId>
<version>${mule.maven.plugin.version}</version>
<extensions>true</extensions>
<configuration>
<sharedLibraries>
<!-- MySQL driver dependency configured as a shared library -->
<sharedLibrary>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</sharedLibrary>
</sharedLibraries>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<!--Database Connector dependency -->
<dependency>
<groupId>org.mule.connectors</groupId>
<artifactId>mule-db-connector</artifactId>
<version>1.5.0</version>
<classifier>mule-plugin</classifier>
</dependency>
<!-- MySQL driver dependency -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.33</version>
</dependency>
</dependencies>
アプリケーションのコネクタ用に追加プラグイン連動関係を設定すると、それらの連動関係はそのコネクタでのみ使用可能になります。これにより、異なるコネクタに対して、異なる連動関係や同じ連動関係の複数のバージョンさえ設定できます。
この機能の詳細な説明は、「Additional Plugin Dependencies (追加プラグイン連動関係)」を参照してください。
追加プラグイン連動関係を設定するには、プロジェクトの pom.xml
ファイルの Mule Maven プラグイン設定内に次の要素を追加します。
<additionalPluginDependencies>
<plugin>
<groupId>${connectorGroupID}</groupId>
<artifactId>${connectorArtifactID}</artifactId>
<additionalDependencies>
<dependency>
<groupId>${dependencyGroupID}</groupId>
<artifactId>${dependencyArtifactID}</artifactId>
<version>${dependencyVersion}</version>
</dependency>
</additionalDependencies>
</plugin>
</additionalPluginDependencies>
次の例では、Derby ドライバーを Database Connector の連動関係として設定しています。
<plugin>
<!-- Mule Maven Plugin configuration -->
<groupId>org.mule.tools.maven</groupId>
<artifactId>mule-maven-plugin</artifactId>
<version>${mule.maven.plugin.version}</version>
<configuration>
<!-- Plugin dependencies configuration-->
<additionalPluginDependencies>
<!-- The connector for which the dependency is defined -->
<plugin>
<groupId>org.mule.connectors</groupId>
<artifactId>mule-db-connector</artifactId>
<!-- Dependencies definition for the connector -->
<additionalDependencies>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
<version>10.11.1.1</version>
</dependency>
</additionalDependencies>
</plugin>
</additionalPluginDependencies>
</configuration>
</plugin>