我只是删除了没有用的java类文件。在intellij中构建了包之后,Jacoco测试报告也显示了删除的java类。作为参考,我附上了sceenshot。
答案 0 :(得分:1)
针对正在使用的任何构建工具(ant,maven,gradle)运行clean
命令。
如果仅偶尔运行jacocoTestReport
,则可能要为其添加一个对clean
的依赖,以确保它始终在生成报告之前发生。
当我在类上更改程序包名称并且旧程序包仍在报告中时,我注意到了同样的问题。
发生的事情是,所创建的报告只是一堆文件,这些文件遵循项目中文件的命名和打包约定。因此,即使您删除了Java文件并重新运行jacocoTestReport
,上一次运行jacocoTestReport
的文件仍位于该报告文件夹中。如果您在文件夹中查找,则会发现报告文件中已删除类的时间戳早于其周围的时间戳。它只需要clean
,这样您的下一次运行将只包含与当前报告相关的文件。
我认为可以更改jacocoTestReport
写入报告文件的位置,并且如果选择除构建目录之外的其他位置,则还需要更新clean
任务以清理该区域。
答案 1 :(得分:0)
今天我也发生了同样的事情。这是由于:
.class
中的target/
个文件)而被git忽略mvn clean
没有清除这些文件,因为相应的模块已从pom.xml
中删除**/classes
和**/**.exec
,而不关心.gitignore
或pom.xml
。删除后,删除旧文件,Jacoco报告的覆盖范围已更改。
我用git clean -f -d --dry-run
查找旧文件夹,并用git clean -f -d
删除了它们。请小心使用此命令!