2

在 Eclipse 上执行 Junit 测试用例时,我们通过 传递用于 DB 配置的 VM 参数-D,但是在通过 Maven 将相同的 Junit 测试用例上传到 Sonar 时,它不起作用,因为没有设置 VM 参数。

我试图通过MAVEN_OPTSon传递参数,MVN.sh但它不起作用。

4

1 回答 1

0

与其在命令行上使用系统属性设置数据库配置,不如考虑使用配置文件进行设置。

在您的 pom.xml 中添加类似这样的内容:

<profiles>
  <profile>
    <id>sonar</id>
    <build>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.12.3</version>
          <configuration>
            <systemPropertyVariables>
              <db.user>foo</db.user>
              <db.password>bar</db.password>
            </systemPropertyVariables>
          </configuration>
        </plugin>
      </plugins>
    </build>
  </profile>
</profiles>

文档:

http://maven.apache.org/guides/introduction/introduction-to-profiles.html

http://maven.apache.org/plugins/maven-surefire-plugin/examples/system-properties.html

于 2012-09-26T13:46:08.950 回答