アーティファクトの検索
プロジェクトで外部アーティファクトを使用するには、build.gradle
Gradle スクリプトでそれらの依存関係を構成する必要があります。
アーティファクトを依存関係として指定する前に、まずその属性を見つける必要があります。 アーティファクトには次の属性があります。
- グループID :オーサリング組織
- アーティファクトID :名前/識別子
- バージョン :リリース番号
ここでは、アーティファクト属性を見つけて依存関係を指定する方法を学習します。
コアアーティファクト属性の検索
各Liferayアーティファクトは、アーティファクトのOSGiバンドルメタデータ属性を含むMETA-INF/MANIFEST.MF
ファイルが含まれるJARファイルです。 たとえば、次の2つのOSGiヘッダーは、アーティファクトIDとバージョンを指定します。
Bundle-SymbolicName: [artifact ID]
Bundle-Version: [version]
Liferay DXPフィックスパックのアーティファクトは、Liferay DXPインストールアーティファクトをオーバーライドします。 フィックスパックの binaries
フォルダには、サブフォルダのアーティファクトが含まれています。 プロジェクトでフィックスパックによって提供されるアーティファクトが必要な場合は、依存関係を宣言するときにフィックスパックからバージョンを宣言してください。
Liferayのコアアーティファクトを見つける場所は次のとおりです。
ファイル | グループID | アーティファクトID | バージョン | 原点 |
---|---|---|---|---|
portal-kernel.jar | com.liferay.portal | com.liferay.portal.kernel | (JARの MANIFEST.MF を参照) | フィックスパックZIP、Liferayインストール、またはLiferay依存関係ZIP |
portal-impl.jar | com.liferay.portal | com.liferay.portal.impl | (JARの MANIFEST.MF を参照) | フィックスパックZIPまたはLiferay .war |
util-bridges.jar | com.liferay.portal | com.liferay.util.bridges | (JARの MANIFEST.MF を参照) | フィックスパックZIPまたはLiferay .war |
util-java.jar | com.liferay.portal | com.liferay.util.java | (JARの MANIFEST.MF を参照) | フィックスパックZIPまたはLiferay .war |
util-slf4j.jar | com.liferay.portal | com.liferay.util.slf4j | (JARの MANIFEST.MF を参照) | フィックスパックZIPまたはLiferay .war |
util-taglibs.jar | com.liferay.portal | com.liferay.util.taglib | (JARの MANIFEST.MF を参照) | フィックスパックZIPまたはLiferay .war |
com.liferay.* JARファイル | com.liferay | (JARの MANIFEST.MF を参照) | (JARの MANIFEST.MF を参照) | フィックスパックZIP、Liferayインストール、Liferay依存関係ZIP、またはOSGi ZIP |
次に、Liferayアプリと独立したモジュールアーティファクトの属性を見つける方法を学びます。
Liferayアプリと独立したアーティファクトの検索
コア外のモジュールの場合でも、必要なモジュールへの依存関係を指定する必要があります。 必要な依存関係を見つけるには、次の3つの方法があります。
リソース | アーティファクトタイプ |
---|---|
アプリケーションマネージャ | デプロイされたモジュール |
参照ドキュメント | Liferayモジュール(リリースごと) |
Maven Central | すべてのアーティファクトのタイプ:Liferayとサードパーティ、モジュールと非モジュール |
com.liferay
は、Liferayのすべてのアプリと独立したモジュールのグループIDです。
アプリケーションマネージャは、デプロイされたモジュールに関する最良の情報を提供します。
アプリケーションマネージャ
アプリケーションマネージャは、Liferayインスタンスにデプロイされているものを表示します。
-
Liferayで、 グローバルメニュー()をクリックし、 [コントロールパネル] タブを選択します。
-
[System]カテゴリで、 [App Manager] を選択します。
-
表示名、シンボル名、または関連するキーワードでモジュールを検索します。 アプリの一覧からモジュールを閲覧することもできます。 閲覧するか検索するかにかかわらず、アプリマネージャーは各モジュールのアーティファクトIDとバージョン番号を表示します。
アプリケーションマネージャは、独立モジュールを独立モジュールカテゴリに集約します。
独立したモジュールのグループIDがわからない場合は、Felix Gogo シェルを使用して検索します。
-
コントロールパネルの[System]カテゴリで、 [Gogo Shell] を選択します。 Gogo シェルコマンドプロンプトにコマンドを入力します。
-
表示名(
Apache Aries CDI
など)またはキーワードでモジュールを検索します。 結果で、モジュールの番号をメモします。 次のステップで使用できます。 以下の例は、Liferay Announcements APIモジュール番号47
を示しています。 -
モジュール番号を指定して
headers
コマンドを使用して、マニフェストヘッダーを表示します。Bundle-Vendor
またはImplementation-Vendor
の値に注目してください。 後のステップでアーティファクトグループと照合します。 -
Maven Central または MVNRepository で、アーティファクトIDでモジュールを検索します。
-
手順3の
Bundle-Vendor
またはImplementation-Vendor
の名前を、アーティファクトを提供するグループと照合して、グループIDを決定します。
Liferay参照ドキュメントには、Liferayアプリのアーティファクト属性も記載されています。
参照ドキュメント
LiferayのアプリJavadocには、各アプリモジュールのアーティファクトID、バージョン番号、表示名が一覧表示されます。 これは、LiferayインスタンスにまだデプロイされていないLiferayアプリモジュールを検索するのに最適な場所です。
Liferayのコアアーティファクトのアーティファクト情報を見つけるには、前のセクションLiferayのコアアーティファクト属性の検索を参照してください。
JavadocでLiferayアプリモジュールの属性を見つけるには、次の手順に従います。
-
アプリモジュールクラスのJavadocに移動します。 クラスのJavadocへのリンクがない場合は、LiferayエディションのアプリJavadocを閲覧してリンクを検索します。
Liferay DXP : https://docs.liferay.com/dxp/apps
Liferay Portal : https://docs.liferay.com/ce/apps
-
クラスのパッケージ名をコピーします。
-
[Overview] ページに移動します。
-
[Overview] ページで、手順2でコピーしたパッケージ名を検索します。
パッケージ名の上の見出しには、モジュールのアーティファクトID、バージョン番号、表示名が表示されます。 すべてのアプリモジュールのグループIDはcom.liferay
であることを思い出してください。
現在、モジュールのバージョン番号はどのタグライブラリの参照ドキュメントにも含まれていません。
次に、MVNRepositoryおよびMaven Centralでアーティファクトを検索する方法を学習します。
Maven Central
タイプや原点に関係なく、ほとんどのアーティファクトは MVNRepository と MavenCentral にあります。 これらのサイトは、クラスパッケージに基づいてアーティファクトを見つけるのに役立ちます。 アーティファクトのパッケージ名の先頭にアーティファクトのIDを含めるのが一般的です。 たとえば、クラスorg.osgi.service.component.annotations.Component
に依存している場合は、Mavenサイトの1つでパッケージ名org.osgi.service.component.annotations
を検索します。
上記の手順に従って、必要なLiferayアーティファクトのバージョンを確認してください。
次のステップ
アーティファクトの属性がわかったので、アーティファクトへの依存関係を構成できます。 詳細については、依存関係の指定を参照してください。