java - Maven 2.2.1 附加测试。问题-Dmaven.test.skip=true

标签 java unit-testing maven maven-2

我正在使用插件在另一个模块的测试中附加测试。

  <build>
    <plugins>
     <plugin>
       <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-jar-plugin</artifactId>
       <version>2.2</version>
       <executions>
         <execution>
           <goals>
             <goal>test-jar</goal>
           </goals>
         </execution>
       </executions>
     </plugin>
    </plugins>
  </build>

在需要jar的模块中:

   <dependency>
      <groupId>com.myco.app</groupId>
      <artifactId>foo</artifactId>
      <version>1.0-SNAPSHOT</version>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>
  </dependencies>

对我很有用,但是我发现了一个问题:当我执行"clean install -Dmaven.test.skip=true"时,也< strong>需要依赖test-jar,处理失败

最佳答案

是的,因为 -Dmaven.test.skip=true 只会让 maven junit 插件(surefire 和 failsafe)不执行 - 它会阻止它们运行任何测试。

不会阻止 Maven 尝试“收集”所有测试范围的依赖项。 maven 仍然收集所有这些。

如果你想要可选的依赖项(无论什么范围),你应该阅读 maven profiles - 您可以定义一个配置文件,其中将定义此依赖项,然后 Maven 将仅在您激活配置文件(例如从命令行)时尝试获取它

关于java - Maven 2.2.1 附加测试。问题-Dmaven.test.skip=true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17454481/

相关文章:

unit-testing - 提供文件的 karma 与包含文件的 karma 有什么区别?

performance - gradle install 比 maven install 慢?

java - Easy-Rules 规则引擎,不能同时触发多个事实

java - 如何使用 gradle-launch4j 插件将 gradle 项目编译为 exe

java - 带有 spring-restdocs 2.0.2.RELEASE 的空指针(带有 Restassured)

c# - 努力(EF 单元测试)给出错误

java - 如何防止我的类被反编译

c# - 测试闭包

maven - 在 Jersey 从 1.9 升级到 Jackson 2.0 不起作用

java - Spring 4.0.1 + quartz 1.5.2