我们已经使用cargo启动jetty来做集成测试的容器。为了更能模拟正式环境我尝试使用jboss来发布。
经过多次测试发现只需做如下更改就可:
1.定义参数
<properties>
<cargo.host>localhost</cargo.host> <cargo.port>8080</cargo.port>
<cargo.wait>false</cargo.wait>
<cargo.container>jboss4x</cargo.container>
<cargo.container.home>${env.JBOSS_HOME}</cargo.container.home>
<!--cargo.container.url>http://easynews.dl.sourceforge.net/sourceforge/jboss/jboss-4.0.5.GA.zip</cargo.container.url-->
</properties>
2.修改原有的maven-cargo-plugin
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>0.3</version> <configuration>
<wait>${cargo.wait}</wait> <container>
<containerId>${cargo.container}</containerId>
<home>${cargo.container.home}</home> <zipUrlInstaller>
<url>${cargo.container.url}</url> <installDir>${installDir}</installDir>
</zipUrlInstaller>
</container> <configuration>
<home>${project.build.directory}/${cargo.container}/container</home> <properties>
<cargo.hostname>${cargo.host}</cargo.hostname>
<cargo.servlet.port>${cargo.port}</cargo.servlet.port>
</properties>
</configuration>
</configuration> <executions>
<execution>
<id>start-container</id> <phase>pre-integration-test</phase> <goals>
<goal>start</goal>
</goals>
</execution> <execution>
<id>stop-container</id> <phase>post-integration-test</phase> <goals>
<goal>stop</goal>
</goals>
</execution>
</executions>
</plugin>
几点心得:
1. 通过定义propreties参数的方式来实现不同的发布策略。
2. 环境变量可以通过如 ${env.JBOSS_HOME}获得。也许可以解决WEB_CONFIG_HOME找不到的问题。
分享到:
相关推荐
exec-maven-plugin是Maven生态系统中的一个插件,它允许用户在Maven构建过程中执行外部命令或脚本。这使得Maven项目可以集成更多的自定义操作,比如运行特定的脚本、调用系统命令等。本文将详细介绍exec-maven-...
Maven 使用 tomcat8-maven-plugin 插件 Maven 是一个流行的构建自动化工具,它可以帮助开发者自动完成项目的编译、测试、打包、部署等任务。 Tomcat 是一个流行的 Web 服务器,Maven 提供了一个插件 tomcat8-maven-...
`maven-compiler-plugin-3.8.0-source-release` 是 Maven 生态系统中不可或缺的一部分,它提供了可靠的源代码编译功能,使得开发者能够专注于编写代码,而无需关心构建过程的细节。通过理解 Maven 插件的工作原理和...
maven-deploy-plugin-2.8.2.jar
maven-jar-plugin-3.1.1.jar
本文将详细讨论如何将Jetty与Maven进行集成,并介绍关键的`maven-jetty-plugin`插件及其不同版本。 1. Maven与Jetty集成的意义: Maven通过其强大的依赖管理功能,使得项目构建变得简单和规范。而Jetty作为轻量级...
`com.googlecode` 的 `maven-db-plugin.jar` 包是一个在 `googlecode` 平台上发布的 Maven 插件。这个插件主要用于与数据库相关的构建任务,例如自动化地创建、更新或者清理数据库。`Maven` 是一个广泛使用的项目...
maven-antrun-plugin-3.0.0.jar
maven-clean-plugin-3.1.0.jar
maven是个项目管理工具,如果我们不告诉它我们的代码要使用什么样的jdk版本编译的话,它就会用maven-compiler-plugin默认的jdk版本来进行处理,这样就容易出现版本不匹配,以至于可能导致编译不通过的问题。...
maven-surefire-plugin-2.22.1.jar
maven-install-plugin-2.4.jar
maven-jxr-plugin-2.1.jar
本项目是基于Java的smart-doc-maven-plugin官方maven插件设计源码,包含43个文件,其中包括27个Java源文件、7个Markdown文档、2个JSON文件、1个gitignore文件、1个LICENSE文件、1个NOTICE文件、1个PNG图片文件、1个...
maven-deploy-plugin-2.7.jar
maven-assembly-plugin-2.2-beta-5.jar
maven-resources-plugin-3.1.0.jar
dockerfile-maven-plugin 支持 maven 直接发布项目至 docker 镜像库
maven-resources-plugin-2.4.1.jar
maven-antrun-plugin-1.3.jar maven-archiver-2.2.jar maven-artifact-3.2.1-sources.jar maven-assembly-plugin-2.2-beta-5.jar maven-bundle-plugin-1.0.0.jar maven-clean-plugin-2.4.1.jar maven-clean-plugin-...