繁体   English   中英

将Java EE Web App部署到Wildfly / JBoss EAP

[英]Deploying Java EE Web App to Wildfly/JBoss EAP

更多的是“什么是最佳实践”? 这样的问题。

当前,我们有许多Java EE Web应用程序是通过Web界面手动部署到JBoss EAP 7.0应用程序服务器的。 我正在考虑使它们自动化,并有一个简单的Jenkins构建,它将使用Jenkins推广的构建插件和Wildfly maven插件部署到我们的UAT环境中。

没关系,但我们显然有一个要完善的定义的“构建”和“部署”设置。 但是,我的问题是,当我们运行“ wildfly:deploy”目标时,它将运行构建的maven安装部分!

本质上,部署到不同的环境会重新构建应用程序,因此我们不能保证与经过测试的构建进行逐字节奇偶校验。

有没有最佳实践方法,可以在使用Jenkins / Maven的环境中将构建的最终发行版部署到JBoss EAP / Wildfly上?

谢谢大家!

我不确定为什么需要使用Maven进行部署。 为什么不使用jboss-cli工具? 这样,您可以执行以下操作:

jboss-cli.sh --connect --command="deploy target/your.war --force"

这是“ localhost”版本,它假定您尚未为Wildfly创建任何用户,但可以使您了解可以做什么。 CLI文档采用了不同的方式来部署应用程序,并在安全方面进行了很大的扩展。

Jenkins可以像运行Maven构建一样轻松地运行shell或批处理脚本,因此在Jenkins中实现起来应该不太困难。

在开发工作流程中,可以很好地使用maven进行部署,这样可以节省时间和上下文切换。

您可以创建用于部署的专用maven配置文件-这样,您就可以灵活地使用maven来进行构建和部署(随心所欲),或者使用您的deploy配置文件运行maven,然后进行构建+部署。

前往Wildfly maven插件以获取更多信息。 它可以完成除部署之外的许多任务,包括通过jboss cli进行配置,但是为了进行部署,这就是您所需要的:

<profile
  <id>jboss-deploy</id>
  <build>
    <plugins>
      <plugin>
            <groupId>org.wildfly.plugins</groupId>
            <artifactId>wildfly-maven-plugin</artifactId>
            <version>1.2.1.Final</version>
        </plugin>
     </plugins>
  </build>
 </profile>

现在,您可以简单地运行mvn clean package -Pjboss-deploy并且maven将编译和打包您的应用程序,然后将所产生的战争或耳朵部署到正在运行的JBoss / Wildfly实例中。 您也可以通过mvn wildfly:deploy手动调用mvn wildfly:deploy

玩得开心。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM