Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerMule 4 では、Mule アプリケーションのパッケージ化の方法にいくつかの重要な変更が行われています。Mule アプリケーションは JAR としてパッケージ化されるようになり、構造が異なります。Mule Maven プラグインを使用すると、ソースコードを簡単にこの構造にパッケージ化できます。
場所 | 説明 |
---|---|
|
Mule アプリケーションの記述子 (アプリケーション記述子を参照)。 |
|
ソースコードの場所 (省略可能)。 |
|
Maven レイアウトにあるアプリケーションのすべての連動関係のリポジトリ。アプリケーションのすべてのコネクタが含まれます。(例: |
|
Mule の XML コード。 |
Mule 4 のアプリケーションの META-INF/mule-artifact/
に mule-artifact.json
ファイルがあります。このファイルにアプリケーション、設定、必要な Mule バージョン、クラスローダー設定が説明されています。
{
"configs": [
"ch-usage-sync.xml"
],
"redeploymentEnabled": true,
"name": "ch-usage-sync",
"minMuleVersion": "4.0.0",
"requiredProduct": "MULE_EE",
"classLoaderModelLoaderDescriptor": {
"id": "mule",
"attributes": {
"exportedResources": []
}
},
"bundleDescriptorLoader": {
"id": "mule",
"attributes": {}
}
}
属性 | 値のデータ型 | 説明 |
---|---|---|
|
Array of String (文字列の配列) |
Mule の設定ファイルのセット。 |
|
Boolean (ブール) |
アプリケーション設定ファイルを変更すると再デプロイメントがトリガーされるかどうか。 |
|
String (文字列) |
アプリケーションのわかりやすい名前。 |
|
String (文字列) |
アプリケーションのデプロイに必要な Mule Runtime の最小バージョン。 |
|
String (文字列) |
アプリケーションのデプロイに必要な製品種別。 |
|
Object (オブジェクト) |
アプリケーションのクラスローディングモデルの記述子。 |
|
Object (オブジェクト) |
アプリケーションのバンドル座標の記述子。 |
|
Array of String (文字列の配列) |
プラットフォームで安全に管理する必要があるアーティファクトの一連の設定プロパティを宣言します。 |
Mule Runtime はすべてのアーティファクトで、 セマンティックバージョン管理に従います。セマンティックバージョン管理に従うと、リリースされるアセットの新バージョンがどのようなものかを API のクライアントが容易に想像できます。たとえば、Mule Connector の場合について考えてみます。パッチバージョンが更新されれば、バグ修正 (つまりバグの修正のみ) であることが予想できます。マイナーバージョンが更新された場合は新機能を期待できます。このどちらの変更も後方互換性があると予想されるため、問題なくアップグレードできます。他方、コネクタのメジャーバージョンが更新される場合は、新しい機能を追加したり、はるかに優れた UX を提供したりするために必然的に後方互換性が失われることになります。
また、Mule アーティファクト (アプリケーション、ドメイン、ポリシー) はセマンティックバージョン管理に従うため、Mule アプリケーションを操作するときに何らかの検証が必要になることがあります。Anypoint Platform がセマンティックバージョン管理に従うことで、新しいアセットが整理され、エクスペリエンスが向上します。たとえば、Mule ドメインに新しいメジャーバージョンがある場合、そのバージョンで定義されている一連のグローバルコンポーネントが前回のメジャーバージョンとは異なることを期待できます。そして、新しいドメインを使用するならば、元のドメインに属する Mule アプリケーションの更新が必要になることが予想されます。
Mule 4 の Mule Maven プラグインはアプリケーションを規定の形式でパッケージ化し、対象の環境にデプロイできるようにします。このプラグインは Studio 7 によって自動的に pom.xml
に追加されます。このプラグインを使用してアプリケーションをデプロイする方法については、Mule Maven プラグインのドキュメントを参照してください。
ドメイン、ポリシー、Mule アーティファクトプラグイン (コネクタ、モジュールなど) はすべて Mule アプリケーションと同じ構造です。アーティファクトの種類ごとに、アーティファクト記述子 (mule-artifact.json ) のプロパティ数が異なりますが、どれもよく似ており、すべてセマンティックバージョン管理に従う必要があります。
|