【问题标题】:How to set a java system property during testing phase如何在测试阶段设置 java 系统属性
【发布时间】:2011-11-11 14:42:26
【问题描述】:

抱歉这个愚蠢的问题,但我对 maven 真的很陌生,我找不到任何答案(我试过了,我找到了一些东西,但我不明白 ;-))

问题如下:

  • 我正在使用 tycho 构建我的 (eclipse) RCP APP
  • 我的插件依赖于系统属性来启用调试模式(默认情况下它是禁用的,它是通过使用“-Ddebug=true”作为 java 参数启动程序来启用的)
  • 我有一些测试(打包成片段,随处建议)
  • 我希望在我的测试运行时设置系统属性

我如何指示 maven 这样做?

【问题讨论】:

    标签: eclipse maven tycho


    【解决方案1】:

    试试

    <plugins>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-surefire-plugin</artifactId>
        <version>${tycho-version}</version>
        <configuration>
          <systemProperties>
              <key>value</key>
          </systemProperties>
        </configuration>
      </plugin>
    </plugins>
    

    【讨论】:

      【解决方案2】:

      您应该在 Maven pom 中更新测试插件的配置:

       <build>
          <plugins>
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-surefire-plugin</artifactId>
              <version>2.10</version>
              <configuration>
                 <argLine>-Ddebug=true</argLine>
              </configuration>
            </plugin>
          </plugins>
        </build>
      

      【讨论】:

      • 它不起作用...我认为 tycho 不使用“普通”junit runners,因为它需要在 OSGi 容器中运行测试...
      【解决方案3】:

      第谷使用万无一失。你需要使用surefire的systemPropertyValues配置元素。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-01-24
        • 2011-07-08
        • 2012-07-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多