legacy-knowledge-base
公開されました Jul. 2, 2025

Blade DeployはWARファイルをサポートしない

written-by

Christopher Lui

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

LiferayのBlade CLIは、Liferayの開発者が新しいLiferayモジュールを作成するための簡単な方法です。 その機能の1つは、 Deploying Modules with Blade CLI のドキュメントで説明されているように、モジュールをデプロイすることです。 残念ながら、現時点では、Bladeは .war ファイルのデプロイをサポートしていませんが、この要望をエンジニアに通知するために新しい機能リクエストが作成されました。

.war のファイルをBladeでデプロイしようとすると、次のようなエラーが表示されます:

blade deploy
:assemble UP-TO-DATE
:build
:wars:my-spring-mvc-portlet-project:buildCSS
Using native Sass compiler
Parsed /css/main.scss in 577ms
:wars:my-spring-mvc-portlet-project:compileJava
:wars:my-spring-mvc-portlet-project:processResources
:wars:my-spring-mvc-portlet-project:classes
:wars:my-spring-mvc-portlet-project:war
:wars:my-spring-mvc-portlet-project:assemble
:wars:my-spring-mvc-portlet-project:build

BUILD SUCCESSFUL

Total time: 6.971 secs
Error
  0. [Jar.<init>] java.lang.IllegalArgumentException: A Jar can only accept a file or directory that exists: D:\Projects\NPL\test-blade-error\wars\my-spring-mvc-portlet-project\build\libs\my-spring-mvc-portlet-project.jar

解決策

回避策は2つあります:

  1. .war ファイルを手動で Liferay/deploy フォルダにコピーします。
  2. .war を Gogo shell を使って、以下のコマンド例でインストールします:
blade sh install webbundle:${path to war}?Web-ContextPath=/${contextName}

その例として、次のようなものがあります:

blade sh install webbundle:D:\Projects\NPL\test-blade-error\wars\my-spring-mvc-portlet-project\build\libs\my-spring-mvc-portlet-project.war?Web-ContextPath=/my-spring-mvc-portlet-project
did-this-article-resolve-your-issue

legacy-knowledge-base