7.4. 使用 Maven 部署应用程序
使用 Apache Maven 部署应用程序可让您将部署到 JBoss EAP 轻松合并到现有的开发工作流中。
您可以使用 Maven 使用 WildFly Maven 插件 将应用部署到 JBoss EAP,它提供了简单的操作,以部署和取消部署应用到应用服务器。
7.4.1. 使用 Maven 将应用程序部署到单机服务器 复制链接链接已复制到粘贴板!
以下说明演示了如何使用 Maven 将 JBoss EAP helloworld 快速启动部署和取消部署到单机服务器:
有关 JBoss EAP 快速入门的更多信息,请参阅 JBoss EAP 入门指南中的使用 Quickstart 示例。
部署应用程序
在 Maven pom.xml 文件中初始化 WildFly Maven 插件。这应该已在 JBoss EAP quickstart pom.xml 文件中配置。
<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-maven-plugin</artifactId>
<version>${version.wildfly.maven.plugin}</version>
</plugin>
在 helloworld quickstart 目录中执行以下 Maven 命令。
$ mvn clean install wildfly:deploy
在为部署发出 Maven 命令后,终端窗口会显示指示成功部署的以下输出:
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.981 s
[INFO] Finished at: 2015-12-23T15:06:13-05:00
[INFO] Final Memory: 21M/231M
[INFO] ------------------------------------------------------------------------
部署也可以通过查看活动服务器实例的服务器日志来确认。
WFLYSRV0027: Starting deployment of "jboss-helloworld.war" (runtime-name: "jboss-helloworld.war")
WFLYUT0021: Registered web context: /jboss-helloworld
WFLYSRV0010: Deployed "jboss-helloworld.war" (runtime-name : "jboss-helloworld.war")
取消部署应用
在 helloworld quickstart 目录中执行以下 Maven 命令。
$ mvn wildfly:undeploy
在发出 Maven 命令取消部署后,终端窗口将显示以下指示未部署成功的输出:
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.237 s
[INFO] Finished at: 2015-12-23T15:09:10-05:00
[INFO] Final Memory: 10M/183M
[INFO] ------------------------------------------------------------------------
也可以通过查看活动服务器实例的服务器日志来确认未部署。
WFLYUT0022: Unregistered web context: /jboss-helloworld
WFLYSRV0028: Stopped deployment jboss-helloworld.war (runtime-name: jboss-helloworld.war) in 27ms
WFLYSRV0009: Undeployed "jboss-helloworld.war" (runtime-name: "jboss-helloworld.war")
7.4.2. 使用 Maven 在受管域中部署应用 复制链接链接已复制到粘贴板!
以下说明演示了如何使用 Maven 在受管域中部署和取消部署 JBoss EAP helloworld 快速启动:
有关 JBoss EAP 快速入门的更多信息,请参阅 JBoss EAP 入门指南中的使用 Quickstart 示例。
部署应用程序
在受管域中部署应用程序时,您必须指定应部署到的服务器组。这在 Maven pom.xml 文件中配置。
pom.xml 中的以下配置初始化 WildFly Maven 插件,并将 main-server-group 指定为应部署到的服务器组。
<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-maven-plugin</artifactId>
<version>${version.wildfly.maven.plugin}</version>
<configuration>
<domain>
<server-groups>
<server-group>main-server-group</server-group>
</server-groups>
</domain>
</configuration>
</plugin>
在 helloworld quickstart 目录中执行以下 Maven 命令。
$ mvn clean install wildfly:deploy
在为部署发出 Maven 命令后,终端窗口会显示指示成功部署的以下输出:
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.005 s
[INFO] Finished at: 2016-09-02T14:36:17-04:00
[INFO] Final Memory: 21M/226M
[INFO] ------------------------------------------------------------------------
部署也可以通过查看活动服务器实例的服务器日志来确认。
WFLYSRV0027: Starting deployment of "jboss-helloworld.war" (runtime-name: "jboss-helloworld.war")
WFLYUT0021: Registered web context: /jboss-helloworld
WFLYSRV0010: Deployed "jboss-helloworld.war" (runtime-name : "jboss-helloworld.war")
取消部署应用
在 helloworld quickstart 目录中执行以下 Maven 命令。
$ mvn wildfly:undeploy
在发出 Maven 命令取消部署后,终端窗口将显示以下指示未部署成功的输出:
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.750 s
[INFO] Finished at: 2016-09-02T14:45:10-04:00
[INFO] Final Memory: 10M/184M
[INFO] ------------------------------------------------------------------------
也可以通过查看活动服务器实例的服务器日志来确认未部署。
WFLYUT0022: Unregistered web context: /jboss-helloworld
WFLYSRV0028: Stopped deployment jboss-helloworld.war (runtime-name: jboss-helloworld.war) in 106ms
WFLYSRV0009: Undeployed "jboss-helloworld.war" (runtime-name: "jboss-helloworld.war")