如何在不运行单元测试的情况下构建Maven项目?

目前重组一些代码,我有一个Servlet,并想尝试在我的web浏览器(这意味着运行mvn安装,以获得.war上传到Tomcat)。我完全意识到我的单元测试失败,我很好,因为我将修复它,一旦我有我想要的代码的方式。有谁能给点建议吗?


当前回答

如果您调用类测试,Maven似乎会自动运行它们,至少对我来说是这样。重命名类,Maven将只进行验证,而不运行它们。

其他回答

使用Intellij切换跳过测试模式可以从Maven项目选项卡使用:

如果您正在使用eclipse,在配置页面上有一个“跳过测试”复选框。

运行配置→ Maven Build→ 新→ 主菜单→ 跳过测试

如果您想跳过运行和编译测试:

mvn -Dmaven.test.skip=true install

如果要编译但不运行测试:

mvn install -DskipTests

我喜欢简短的版本:mvn清洁安装-DskipTests

这也是工作:mvn clean install -DskipTests=true

如果必须,也可以使用maven.test.skip属性跳过编译测试。maven.test.skip是由Surefire, Failsafe和编译器插件。 mvn clean install -Dmaven.test.skip=true

你可以在maven.xml中添加配置

<project>
      [...]
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.16</version>
            <configuration>
              <skipTests>true</skipTests>
            </configuration>
          </plugin>
        </plugins>
      </build>
      [...]
    </project>

如果您调用类测试,Maven似乎会自动运行它们,至少对我来说是这样。重命名类,Maven将只进行验证,而不运行它们。