首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >忽略Maven -DskipTests

忽略Maven -DskipTests
EN

Stack Overflow用户
提问于 2013-11-07 22:42:27
回答 6查看 113.1K关注 0票数 42

我正在使用以下SureFire配置构建一个Maven项目:

代码语言:javascript
复制
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>${version.maven-surefire-plugin}</version>
    <configuration>
        <includes>
            <include>**/*Test.java</include>
        </includes>
    </configuration>
</plugin>

问题是,当我用mvn clean install -DskipTests=true构建它时,测试仍然在执行。可能的问题是什么?

我尝试了-DskipTests(来自Maven website)和-DskipTests=true,这是IntelliJ Idea在我选中“跳过测试”复选框时添加的。

我不使用任何Maven settings.xml

2.2.1

  • Surefire插件版本:
  • Maven : 2.3

编辑如果我注释掉了SureFire插件配置,参数的行为就像我所期望的那样。上面的配置会有什么问题?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2013-11-07 23:08:14

你所做的应该是有效的。如何进一步调试:

  1. 运行mvn help:effective-pom以查看Maven将执行的整个POM。在其中搜索test (不区分大小写),看看是否有什么奇怪的地方。
  2. 运行mvn test -X以获取调试输出。这将打印用于配置maven-surefire-plugin的选项。确保将输出重定向到文件!

在日志中,您将看到

使用基本配置器调试配置mojo 'org.apache.maven.plugins:maven-surefire-plugin:2.15:test‘-->

然后,下面的几行代码:

DEBUG runOrder = filesystem DEBUG skip = false DEBUG skipTests = false

这些值表示不会跳过测试。

  • 您是否正在使用最新版本的插件?Check here。可能您的版本不支持此选项。
票数 16
EN

Stack Overflow用户

发布于 2013-11-07 22:49:53

Maven知道跳过测试的两种类型的参数:

代码语言:javascript
复制
-Dmaven.test.skip=true 

代码语言:javascript
复制
-DskipTests=true 

surefire-plugin documentation只提到了第一个,您还没有尝试过。

票数 49
EN

Stack Overflow用户

发布于 2013-11-07 23:20:19

考虑到您正在使用的是surfire版本2.3,它不是-DskipTests=true,它只是-DskipTests

所以你可以这样运行它

代码语言:javascript
复制
mvn install -DskipTests
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19838734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档