我正在编写一个JAR文件,充当Jenkins CI webapp的客户端。因此,我的项目有罐装包装,而不是战争包装。但是,对于集成测试,我需要部署Jenkins WAR来测试我的JAR类。Maven:无法在预集成测试和后整合测试阶段启动JAR项目上的插件
我使用的货物maven2的-插件,并将它设置,使我可以用下面的命令行启动詹金斯“MVN货:运行”但是,在运行“MVN安装”进入集成测试阶段没有试图用货运发射詹金斯。事实上,“mvn install -X”的输出甚至没有提到“货物”这个词。
它看起来像我已经正确地将货物绑定到预集成测试和整合后测试,但它不会触发。
POM如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.phoenix.build</groupId>
<artifactId>HostOp</artifactId>
<packaging>jar</packaging>
<version>0.0.1-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<jetty.port>53657</jetty.port><!-- mnemonic: 'JENKS' on a telephone -->
</properties>
<name>Host Operations</name>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.7.2</version>
<configuration>
<systemProperties>
<property>
<name>maven.output.dir</name>
<value>${project.build.directory}</value>
</property>
</systemProperties>
<excludes>
<exclude>**/*IntegrationTest.java</exclude>
</excludes>
</configuration>
<executions>
<execution>
<id>integration-tests</id>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<skip>false</skip>
<excludes>
<exclude>none</exclude>
</excludes>
<includes>
<include>**/*IntegrationTest.java</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<executions>
<execution>
<id>start-container</id>
<phase>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>
<configuration>
<container>
<containerId>jetty6x</containerId>
<type>embedded</type>
<systemProperties>
<JENKINS_HOME>target/test-classes/jenkins_home</JENKINS_HOME>
</systemProperties>
</container>
<configuration>
<properties>
<cargo.servlet.port>53657</cargo.servlet.port>
<cargo.jvmargs>-DJENKINS_HOME=target/test-classes/jenkins_home</cargo.jvmargs>
</properties>
<deployables>
<deployable>
<type>war</type>
<location>target/test-classes/jenkins.war</location>
<pingURL>http://localhost:53657/jenkins/view/All/newJob</pingURL>
</deployable>
</deployables>
</configuration>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.2</version>
</dependency>
</dependencies>
</project>
我怎样才能得到这个火需要?
您确定您的/ project/build/plugins元素中有插件,并且没有意外嵌套在配置文件中吗?这比我能算的更多次,但我仍然会这样做。 – 2012-04-27 17:49:45
对不起,它在。不过,好想法。 –
2012-04-27 17:57:32
你可以发布一个POM修剪到只有你看到的方式失败的货物插件吗? – 2012-04-27 18:13:54