もしあなたが熱心なMavenユーザーであり、Liferay Portal 6.2プロジェクトの開発にそれを使用している場合は、Liferay DXP 7.1開発と互換性を持たせるようMavenビルドをアップグレードする必要があります。 対処すべきMaven環境のアップグレードプロセスには、2つの主要な要素があります。
Liferay DXP 7.1でMavenを使用する方法の詳細については、Maven tutorial sectionを参照してください。 Mavenビルドのガイド付き優先アップグレードプロセスについては、Liferay Upgrade Plannerをお試しください。
Liferayは、Liferay DXP 7.1開発専用に調整されたMaven開発環境も提供しています。 詳細については、チュートリアルMaven Workspaceをご覧ください。
まずは、Maven環境のLiferay Mavenプラグインをアップグレードすることから始めます。
新しいLiferay DXP 7.1 Mavenプラグインへのアップグレード
プロジェクトのビルドプラグインの最大の変更点は、liferay-maven-plugin
の削除です。 Liferayは、特定のタスクを実行する複数の個別のMavenプラグインを提供するようになりました。 たとえば、LiferayのCSS Builder、Service Builder、Theme BuilderなどのためのMavenプラグインを設定できます。 プロジェクト内の特定のタスクを実行するために使用可能な小さなプラグインを使用すると、不要な多くの機能を提供する1つの大きなプラグインに依存する必要がなくなります。
たとえば、Liferay Portal 6.2プロジェクトが、Liferay CSS Builderのみに適したlifelife-maven-plugin
を使用していたとします。 まずはプロジェクトのpom.xml
ファイルから、従来のliferay-maven-plugin
プラグインの依存関係を削除する必要があります。
<plugin>
<groupId>com.liferay.maven.plugins</groupId>
<artifactId>liferay-maven-plugin</artifactId>
<version>${liferay.version}</version>
<configuration>
<autoDeployDir>${liferay.auto.deploy.dir}</autoDeployDir>
<liferayVersion>${liferay.version}</liferayVersion>
<pluginType>portlet</pluginType>
</configuration>
</plugin>
次に、プロジェクトのpom.xml
ファイルにCSS Builderプラグインの依存関係を追加します。
<plugin>
<groupId>com.liferay</groupId>
<artifactId>com.liferay.css.builder</artifactId>
<version>1.0.21</version>
<executions>
<execution>
<id>default-build</id>
<phase>generate-sources</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
<configuration>
<docrootDirName>src/main/webapp</docrootDirName>
</configuration>
</plugin>
いくつかの一般的なLiferay Mavenプラグインを以下にリストし、対応するアーティファクトIDとそれらの設定方法を説明するチュートリアルを示します。
一般的なLiferay Mavenプラグイン
名前 | アーティファクトID | チュートリアル |
---|---|---|
Bundle Support | com.liferay.portal.tools.bundle.support | 近日公開 |
CSS Builder | com.liferay.css.builder | MavenプロジェクトでのSASSファイルのコンパイル |
DB Support | com.liferay.portal.tools.db.support | DBサポートプラグイン |
Deployment Helper | com.liferay.deployment.helper | 近日公開 |
Javadoc Formatter | com.liferay.javadoc.formatter | 近日公開 |
Lang Builder | com.liferay.lang.builder | 近日公開 |
Service Builder | com.liferay.portal.tools.service.builder | Service Builderプラグイン |
Source Formatter | com.liferay.source.formatter | Source Formatterプラグイン |
Theme Builder | com.liferay.portal.tools.theme.builder | Theme Builderプラグイン |
TLD Formatter | com.liferay.tld.formatter | 近日公開 |
WSDD Builder | com.liferay.portal.tools.wsdd.builder | 近日公開 |
XML Formatter | com.liferay.xml.formatter | 近日公開 |
Liferay Portal 6.2では、すべてのアプリケーションサーバーの構造設定も指定する必要がありました。 たとえば、親POMには次のような設定が含まれていた可能性があります。
<properties>
<liferay.app.server.deploy.dir>
E:\liferay-portal-6.2.0-ce-ga1\tomcat-7.0.42\webapps
</liferay.app.server.deploy.dir>
<liferay.app.server.lib.global.dir>
E:\liferay-portal-6.2.0-ce-ga1\tomcat-7.0.42\lib\ext
</liferay.app.server.lib.global.dir>
<liferay.app.server.portal.dir>
E:\liferay-portal-6.2.0-ce-ga1\tomcat-7.0.42\webapps\root
</liferay.app.server.portal.dir>
<liferay.auto.deploy.dir>
E:\liferay-portal-6.2.0-ce-ga1\deploy
</liferay.auto.deploy.dir>
<liferay.version>
6.2.0
</liferay.version>
<liferay.maven.plugin.version>
6.2.0
</liferay.maven.plugin.version
</properties>
LiferayのMavenツールはLiferay DXPインストールの特定のバージョンに依存しないため、Liferay DXP 7.1では不要になりました。 POMファイルからこれらを削除してください。
Liferay DXP 7.1開発で使用できる新しいMavenプラグインについて学習しました。 次に、Liferay Mavenアーティファクトのアップデートについて学習します。
Liferay Mavenアーティファクトの依存関係のアップデート
使用していたLiferay Portal 6.2アーティファクトの多くの依存関係が、Liferay DXP 7.1で変更されました。 変更された、よく使用されているLiferay Mavenアーティファクトについては、以下の表を参照してください。
Liferay Portal 6.2アーティファクトID | Liferay DXP 7.1アーティファクトID |
---|---|
portal-service | com.liferay.portal.kernel |
util-bridges | com.liferay.util.bridges |
util-java | com.liferay.util.java |
util-slf4j | com.liferay.util.slf4j |
util-taglib | com.liferay.util.taglib |
Liferay DXP 7.1で依存関係を解決する方法については、チュートリアルResolving a Plugin’s Dependenciesで詳細を参照してください。
もちろん、プロジェクトで参照しているアーティファクトもアップデートする必要があります。 セントラルリポジトリを使用してLiferay Mavenアーティファクトをインストールする場合は、POMのアーティファクトをアップデートするだけで構いません。ただし、プロキシで作業している場合やインターネットにアクセスできない場合は、会社の共有リポジトリまたはローカルリポジトリを、最新のLiferay DXP 7.1 Mavenアーティファクトでアップデートする必要があります。 説明については、チュートリアルInstalling Liferay Maven Artifactsを参照してください。
これらのアップデートでLiferay Mavenビルドを簡単にアップグレードできるため、Liferay DXP 7.1用の従来のプラグインプロジェクトの開発を開始できます。