如何在使用maven测试之前构建战争

时间:2016-06-15 15:07:22

标签: maven maven-2 maven-3 maven-plugin

我想构建WAR,然后在该WAR上运行JUnit测试。这可能吗?

我跟着我的pom。我应该做些什么改变才能实现?

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>${maven-war-plugin-version}</version>
    <configuration>
        <webXml>WEB-INF/web.xml</webXml>
        <webResources>
            <resource>
                <directory>${basedir}/src/main/resources</directory>
                <targetPath>WEB-INF/classes</targetPath>
            </resource>
            <resource>
                <directory>${basedir}/src/main/sqls</directory>
                <targetPath>WEB-INF/classes</targetPath>
            </resource>
        </webResources>
        <outputFileNameMapping>@{groupId}@.@{artifactId}@-@{version}@.@{extension}@</outputFileNameMapping>
    </configuration>
</plugin>

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>${maven-surefire-plugin-version}</version>
    <configuration>
        <argLine>-Xms256m -Xmx512m -XX:MaxMetaspaceSize=256m -XX:GCTimeRatio=19
            -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:ParallelGCThreads=4
            -XX:NewRatio=2 ${jvm.args.preferences} ${jvm.args.jacoco}</argLine>
    </configuration>
</plugin>

1 个答案:

答案 0 :(得分:0)

我认为您无需更改 pom.xml 中的任何内容。

有 4 种使用 WAR 插件的方法:

  1. 使用项目包类型为war的包阶段
  2. 调用 war:war 目标
  3. 调用 war:exploded 目标
  4. 调用 war:inplace 目标

mvn compile war:war

mvn package -DskipTests -DskipITs

见:Apache Maven WAR Plugin