従来のプラグインをWorkspace Webアプリケーションに移行する

Liferay DXPのAPIに従来のプラグインを適合させた後、プラグインSDK 7.0でそれを維持し続けることができます。ただし、プラグインSDKは、Liferay DXP 7.1では利用できなくなりました。 プラグインSDKの削除については、記事Deprecated Apps in 7.1: What To Doで詳細をご覧ください。 Liferay WorkspaceはプラグインSDKを置き換え、包括的なGradle開発環境などを提供します。 簡単なコマンドで、従来のプラグイン(ポートレットなど)をGradleベースのWebアプリケーションプロジェクトに移行します。 そこから、Webアーカイブ(WAR)としてLiferay DXPにそれらを構築およびデプロイできます。

移行コマンドの実行

Blade CLIのconvertコマンドは、プラグインSDKプラグインをWorkspaceのwarsフォルダのWebアプリケーションプロジェクトに移行します。 プラグインファイルは、標準のWebアプリケーションフォルダ構造に従うように再編成されます。

標準のWebアプリケーションの構造:

  • [project root]
    • src
      • main
        • webapp
          • WEB-INF
            • classes
            • lib → Libraries
            • descriptor files
        • css → CSS files
        • js → JavaScript files
        • icons
        • JSP files
      • java → Java source
    • build files

コマンドラインから、Liferay Workspace のルートフォルダに移動します。 次に、プラグインSDKプロジェクトの名前をBladeのconvertコマンドに渡します。

blade convert [PLUGIN_PROJECT_NAME]

Bladeは、プラグインSDKからプラグインを展開し、Workspaceのwarsフォルダにある標準のWebアプリケーションプロジェクトで再編成します。

**注: **blade convert -lを実行すると、Workspace Webアプリケーションに移行できるプラグインSDKプロジェクトがリストされます。 blade convert --allを実行して、すべてのプラグインプロジェクトを移行します。

下の画像は、Workspace Webアプリケーションに移行する前後のプラグインファイルを示しています。

図1:convertコマンドは、プラグインSDKプロジェクトをWorkspace Webアプリケーションプロジェクトに移行します。 Javaソースファイルをsrc/main/javaへ、また他のすべてのファイル/フォルダをsrc/main/webappへ移動させます。

次の表は、従来のプラグインソースファイルをWorkspaceが使用する標準のWebアプリケーションフォルダ構造にマップしています。

プラグインSDKフォルダからWebアプリケーションフォルダへ:

ファイルプラグインSDKフォルダ(旧)Webアプリケーションフォルダ(新規)
Javadocroot/WEB-INF/srcsrc/main/java
JSPsdocrootsrc/main/webapp
iconsdocrootsrc/main/webapp
CSSdocroot/csssrc/main/webapp/css
JSdocroot/jssrc/main/webapp/js
descriptorsdocroot/WEB-INFsrc/main/webapp/WEB-INF
librariesdocroot/WEB-INF/libsrc/main/webapp/lib

プラグインの新しいロケーションから、Workspace Gradleタスクをそこで呼び出し、その.warファイルを構築できます。

blade gw war

.warをデプロイするには、プラグインのbuild/libsフォルダから[LIFERAY_HOME]/deployフォルダにコピーします。

これがWorkspaceのプラグインの新しいホームです。\

関連トピック

Workspace開発のライフサイクル

Workspace Gradleタスク

« Liferay DXP 7.1のプラグインの最適化プラグインのモジュール化 »
この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています