maven surefirereport -doutputdirectory无法正常工作

时间:2012-11-14 09:23:39

标签: java maven surefire

我尝试将此代码添加到我的pom.xml

<reporting>
<plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-report-plugin</artifactId>
    <version>2.12.4</version>
    <configuration>
      <outputDirectory>D:/eclipse_ws/reports</outputDirectory>
    </configuration>
  </plugin>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-site-plugin</artifactId>
    <version>2.1</version>
    <configuration>
      <outputDirectory>D:/eclipse_ws/reports</outputDirectory>
    </configuration>
  </plugin>
</plugins>

并在Windows命令提示符

中执行此操作

mvn surefire-report:report -DoutputDirectory=D:/eclipse_ws/reports

我仍然在target / site /文件夹中获取surefire-report.html报告。 是否有可能以我的方式更改目录?我犯了什么错误吗?

2 个答案:

答案 0 :(得分:0)

官方文档表明配置类似于OP should work,但它没有。

对我有用的是:

<project>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.18.1</version>
                <configuration>
                    <reportsDirectory>C:/eclipse_ws/reports</reportsDirectory>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

相对路径也有效。此外,您不需要将目录指定为命令行参数,因为您已在配置中执行此操作。

答案 1 :(得分:0)

report plugin doc配置surefire报告的输出位置似乎确实是错误的。

我在this doc page上找到了 目标<xrefLocation>的{​​{1}}参数的描述,它指向surefire-report:report的值。我在pom.xml中尝试了一下,并成功了:

${project.reporting.outputDirectory}