Java Jacoco:无法读取执行数据文件,ant任务
信息: java版本:1.8.0_66 ant版本:1.9.6 我想做的是: 为在AWS windows 2k12服务器上运行的服务器代码提供代码覆盖率报告 我所做的:Java Jacoco:无法读取执行数据文件,ant任务,java,ant,code-coverage,jacoco,Java,Ant,Code Coverage,Jacoco,信息: java版本:1.8.0_66 ant版本:1.9.6 我想做的是: 为在AWS windows 2k12服务器上运行的服务器代码提供代码覆盖率报告 我所做的: 完全停止服务器 将jacocoagent.jar放入服务器的bin文件夹。注意:这是在程序文件文件夹内 将-javaagent设置附加到服务器启动期间使用的JAVA_选项 启动服务器 从本地笔记本电脑上运行我的样本测试 完全停止服务器。这产生了一个184kb的jacoco.exec 已将my build.xml复制到jacoc
- 完全停止服务器李>
- 将jacocoagent.jar放入服务器的bin文件夹。注意:这是在程序文件文件夹内
- 将-javaagent设置附加到服务器启动期间使用的JAVA_选项李>
- 启动服务器
- 从本地笔记本电脑上运行我的样本测试李>
- 完全停止服务器。这产生了一个184kb的jacoco.exec
- 已将my build.xml复制到jacoco.exec所在的同一目录。C:/path/to/exec/jacoco.exec
- 已将jacocant.jar复制到C:/path/to/jacocant.jar
- 将cd放入C:/path/to/exec/并运行命令“ant”
<project name="Example" default="rebuild" xmlns:jacoco="antlib:org.jacoco.ant">
<description>
Example Ant build file that demonstrates how a JaCoCo coverage report
can be itegrated into an existing build in three simple steps.
</description>
<property name="result.dir" location="." />
<property name="result.classes.dir" location="${result.dir}/path/to/classes" />
<property name="result.report.dir" location="${result.dir}/report" />
<property name="result.exec.file" location="${result.dir}/jacoco.exec" />
<!-- Step 1: Import JaCoCo Ant tasks -->
<taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
<classpath path="../jacocoant.jar" />
</taskdef>
<target name="clean">
<delete dir="${result.report.dir}" />
</target>
<target name="report">
<!-- Step 3: Create coverage report -->
<jacoco:report>
<!-- This task needs the collected execution data and ... -->
<executiondata>
<file file="${result.exec.file}" />
</executiondata>
<!-- the class files and optional source files ... -->
<structure name="JaCoCo Code Coverage Report">
<classfiles>
<fileset dir="${result.classes.dir}" >
</fileset>
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${src.dir}" />
</sourcefiles>
</structure>
<!-- to produce reports in different formats. -->
<html destdir="${result.report.dir}" />
<csv destfile="${result.report.dir}/report.csv" />
<xml destfile="${result.report.dir}/report.xml" />
</jacoco:report>
</target>
示例Ant构建文件,演示了JaCoCo覆盖率报告
可以通过三个简单的步骤将其集成到现有构建中。
我不确定问题是出在exec文件上(可能已损坏),还是出在我的整个设置上。
任何有助于识别和解决问题的帮助都将不胜感激
谢谢 我最近也有同样的问题,我花了很长时间才弄明白。我希望我如何解决这将帮助你或其他人
ant-verbose report
查看详细信息。我使用了“ant-verbose report”,得到了这样一条消息:“java.io.IOException:不兼容的版本1007”org.jacoco org.jacoco.ant 0.7.4.20150262128
最后,报告成功生成。我是在使用gradle和jaCoCo时得到的
我删除了build/目录,并重新运行
/gradlew jacotestreport
,这次通过了 类似于@sofia的解决方案,但对于gradle:
我删除了一个又一个工具版本。而不是
allprojects {
jacoco {
toolVersion = '0.7.1.201405082137'
}
}
我使用了以下方法
allprojects {
jacoco {
toolVersion = '0.7.1'
}
}
你找到答案了吗?