8.3. 删除包含共享模块的应用程序
在 JBoss EAP 7.1 服务器中引入的更改,在尝试删除应用时,Maven 插件可能会导致以下失败:如果您的应用程序包含相互交互或依赖的模块,则可能会出现这个错误。
WFLYCTL0184: New missing/unsatisfied dependencies
WFLYCTL0184: New missing/unsatisfied dependencies
例如,假设您有一个包含两个 Maven WAR 项目模块 application-A 和 application-B 的应用,该应用程序共享由 data-sharing 模块管理的数据。
部署此应用程序时,您必须首先部署 共享数据共享 模块,然后部署依赖于它的模块。部署顺序在父 pom.xml 文件的 & lt;modules > 元素中指定。通过 JBoss EAP 8.0,JBoss EAP 6.4 在 JBoss EAP 6.4 中也是如此。
在 JBoss EAP 7.1 之前的发行版本中,您可以使用以下命令从父项目的根目录取消此应用的所有存档:
mvn wildfly:undeploy
$ mvn wildfly:undeploy
在 JBoss EAP 7.1 和更高版本中,您必须首先取消部署使用共享模块的存档,然后取消部署共享模块。由于无法在 pom.xml 文件中指定未部署的顺序,因此您必须手动取消部署模块。您可以从父目录的根目录中运行以下命令来完成此操作。
mvn wildfly:undeploy -pl application-A,application-B mvn wildfly:undeploy -pl data-shared
$ mvn wildfly:undeploy -pl application-A,application-B
$ mvn wildfly:undeploy -pl data-shared
此更新的取消行为更为准确,并确保您不会处于不稳定的部署状态。