この記事はレガシー記事です。 Liferay製品の旧バージョンにも適用されます。 記事のメンテナンスは終了していますが、情報はまだ通用する可能性があります。
今回はまず、プラグイン用の親プロジェクトを新規に作成し、そこにポートレットプロジェクトを追加します。 mavenとjavaがインストールされたmaven環境が整っている必要があります。 MavenなどのMavenリソースを参照してください:完全リファレンス.
解像度
- Liferay 6.1 bundleをダウンロードし、インストールします。
なお、ここではTomcatバンドルについて説明しますが、どのバンドルでもかまいません。 バンドルインストール先は、今後、
LIFERAY_HOME
と表記します。 bundleのインストール方法が必要な場合は、 Liferay 6.1 ユーザーガイドを参照してください。 - プロジェクトのルートとなる新しいディレクトリを作成します。 Antを使用する場合、Liferay plugins SDKを展開する場所です。 そして、そのディレクトリにpom.xmlファイルを作成します。
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion>
<groupId>com.liferay.sample</groupId> <artifactId>sample-project</artifactId> <version>1.0-SNAPSHOT</version> <packaging>pom</packaging>
<name>sample-project</name> <url>http://www.liferay.com</url>
ここで、groupIdとartifactIdをプロジェクトに合わせて調整します。 また、liferay.auto.deploy.dir
の値をLIFERAY_HOME/deploy
に設定してください。 Liferay Portalがデプロイするためのプラグインがコピーされる場所です。liferay.version
プロパティには、使用している Liferay Portal のバージョンが設定されています。 -
コマンドプロンプトまたはターミナルを開き、プロジェクトディレクトリに移動します。 次に、Liferayのポートレットプロジェクトテンプレートを使用してポートレットプロジェクトを作成し、以下のコマンドを実行します:
mvn archetype:generate
このコマンドを実行すると、以下のような利用可能なプロジェクトテンプレートのリストが作成されます:
... 21: remote -> com.liferay.maven.archetypes:liferay-ext-archetype (Provides an archetype to create Liferay extensions.) 22: remote -> com.liferay.maven.archetypes:liferay-hook-archetype (Provides an archetype to create Liferay hooks.) 23: remote -> com.liferay.maven.archetypes:liferay-layouttpl-archetype (Provides an archetype to create Liferay layout templates.) 24: remote -> com.liferay.maven.archetypes:liferay-portlet-archetype (Provides an archetype to create Liferay portlets.) 25: remote -> com.liferay.maven.archetypes:liferay-servicebuilder-archetype (Provides an archetype to create Liferay Service Builder portlets.) 26: remote -> com.liferay.maven.archetypes:liferay-theme-archetype (Provides an archetype to create Liferay themes.) 27: remote -> com.liferay.maven.archetypes:liferay-web-archetype (Provides an archetype to create Liferay webs.) ...
番号を選択するか、フィルタを適用します(フォーマット:[groupId:]artifactId
, case sensitive contains):171:com.liferay.maven.archetypes:liferay-portlet-archetype
次に、テンプレートのバージョンを選択するよう求められます:バージョンを選択します:1: 6.0.22: 6.0.33: 6.0.44: 6.0.55: 6.0.66: 6.1.07: 6.2.0-snapshot6.1.0バージョンの場合は6番を選んでください。 次に、groupId、artifactId、versionの入力を求められます:
Define value for property 'groupId': : com.liferay.sample Define value for property 'artifactId': : sample-portlet Define value for property 'version': 1.0-SNAPSHOT: : Define value for property 'package': com.liferay.sample: : Confirm properties configuration: groupId: com.liferay.sample artifactId: sample-portlet version: 1.0-SNAPSHOT package: com.liferay.sample Y: :
groupIdは、最初のpom.xmlと同じものを使用します。 テツの場合、com.liferay.sampleとなります。 artifactId には sample-portlet を使用し、これが作成されるディレクトリとなります。 バージョンは、プロジェクトの親と同じにする必要があります。 値を確認すると、mavenはポートレットプロジェクトを作成し、モジュールとして親プロジェクトに自動的に追加します。
これで、プロジェクトの構成は次のようになるはずです:pom.xml sample-portlet sample-portlet/pom.xml sample-portlet/src sample-portlet/src/main sample-portlet/src/main/java sample-portlet/src/main/resources sample-portlet/src/main/webapp sample-portlet/src/main/webapp/css sample-portlet/src/main/webapp/css/main.css sample-portlet/src/main/webapp/icon.png sample-portlet/src/main/webapp/js sample-portlet/src/main/webapp/js/main.js sample-portlet/src/main/webapp/view.jsp sample-portlet/src/main/webapp/WEB-INF sample-portlet/src/main/webapp/WEB-INF/liferay-display.xml sample-portlet/src/main/webapp/WEB-INF/liferay-plugin-package.properties sample-portlet/src/main/webapp/WEB-INF/liferay-portlet.xml sample-portlet/src/main/webapp/WEB-INF/portlet.xml sample-portlet/src/main/webapp/WEB-INF/web.xml
-
sample-portletディレクトリに移動して実行します。
mvn package
これにより、ターゲットディレクトリにあるポートレットのwarファイルに、任意のクラスとパッケージがコンパイルされます。
-
ポートレットをLiferayバンドルにデプロイするには、次のように実行します。
mvn liferay:deploy
これで、mavenで最初のLiferayプラグインプロジェクトを作成し、Liferayバンドルにデプロイしました。
追加情報
Mavenのサポート方法については、 Fix Delivery Methodsのページを参照してください。
重要:Liferayが作成していない製品に関する情報は、情報提供のみを目的として提供されており、Liferay Subscription Servicesの推奨や推薦を意味するものではありません。 また、Liferayは、これらの製品に関する本書または参照される指示について、いかなる責任も負わないものとします。