Maven引入Jacoco插件后无法生成jacoco.exec执行文件

目录

  • jacoco.exec
  • 网上常见关于未生成jacoco.exec原因
  • 最终解决方案
    • 不生效原因
    • 解决方案
  • 完整jacoco插件配置

jacoco.exec

执行数据文件,只有生成该文件,才表示引入插件jacoco成功生效
在这里插入图片描述

网上常见关于未生成jacoco.exec原因

网上找了一下解决方式基本都是在jacoco中加入propertyName参数,在surefire中的argLine中引入,试了没用
在这里插入图片描述

最终解决方案

  • 执行不报错
    首先在执行mvn clean test的时候,并没有报错,执行成功,而且生成了surefire-reports目录(会产生Test相关文件,Allure Report
    会用到这些文件)
    后面突然看到了pluginManagement,然后想起了dependencyManagement,问题就这么解决了
  • 术语解释
    • pluginManagement:插件管理,只表示插件声明,Maven不会加载该插件,在父POM中定义,提供给子POM使用,子模块中不需要关心版本,由pluginManagement统一管理;
    • plugins:就是直接引入一个plugin,在父POM中定义后,所有子模块都会继承引用
    • dependencyManagement:依赖管理,只是声明依赖,并不实现引入,在父POM中定义,提供给子POM使用,子模块中不需要关心版本
    • dependencies:直接引入依赖,若定义在父POM中,即使在子项目中不需要,子项目仍然会引入该依赖

不生效原因

jacoco插件放在父Pom的pluginManagement中,子模块没有单独引用,因此没有生效

解决方案

  • 子pom单独引入:jacoco插件配置,只需要引入jacoco,不需要引入surefire
<plugin><groupId>org.jacoco</groupId><artifactId>jacoco-maven-plugin</artifactId><version>0.8.3</version><executions><execution><id>default-prepare-agent</id><goals><goal>prepare-agent</goal></goals></execution><execution><id>default-report</id><phase>test</phase><goals><goal>report</goal></goals></execution></executions>
</plugin>
  • 父Pom引入:将jacoco插件移除pluginManagement,单独放在plugins,简单理解全局生效
    在这里插入图片描述
  • 最终效果
    在这里插入图片描述

完整jacoco插件配置

<plugins><!-- jacoco start --><plugin><groupId>org.jacoco</groupId><artifactId>jacoco-maven-plugin</artifactId><version>0.8.3</version><!-- <configuration>  生成不了jacoco.exec 放开注释试试<propertyName>jacocoArgLine</propertyName></configuration> --><executions><execution><id>default-prepare-agent</id><goals><goal>prepare-agent</goal></goals></execution><execution><id>default-report</id><phase>test</phase><goals><goal>report</goal></goals></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><version>2.22.1</version><configuration><skipTests>false</skipTests><!-- <forkMode>once</forkMode> 生成不了jacoco.exec 放开注释试试<argLine>-Dfile.encoding=UFT-8 ${jacocoArgLine}</argLine> --><includes><include>**/*Test.java</include></includes></configuration></plugin><!-- jacoco end -->
</plugins>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/20622.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

React Dva修改路由设置,不要井号

我们Dva项目的路由 他默认是设置了带井号的这种 其实我觉得到还可以 但是有些人会觉得不太美观 如果 你想去除他 那么 你先要在终端执行 npm install --save history将 history 引入进来 装好之后 我们来到src下的 index.js 加上如下代码 import {createBrowserHistory as …

C 13300000000 代表 C 呼入电话

先欣赏一个美图吧 给一个序列 C 13300000000 代表 C 呼入电话 &#xff0c;电话号码 13300000000 W 037128* 代表 W 白名单 &#xff0c;后面可以模糊匹配&#xff0c;而且保证出现在最后一个 如果呼入时电话在白名单中&#xff0c;则可以呼入&#xff0c;否则拒绝 请按输…

拖拽示教功能块(含算法介绍和完整SCL ST源代码)

这篇博客介绍简单拖拽示教功能的简单原理,在了解示教功能之前大家需要熟悉运动控制相关的内容,这篇博客我们以脉冲驱动为例介绍,所以大家可以先熟悉下脉冲控制功能块,有关运动控制的相关内容,可以查看运动控制专栏,主要链接如下: SMART PLC和V90伺服实现外部脉冲位置控…

ELK插件介绍

ELK插件介绍 一、Grok 正则捕获插件1、概述2、内置正则表达式调用3、自定义表达式调用 二、multiline 多行合并插件1、概念2、安装3、使用 multiline 插件 三、date 时间处理插件1、概念2、操作3、时间戳详解 四、mutate 数据修改插件1、概念2、案例 一、Grok 正则捕获插件 1、…

java项目之多人命题系统(ssm+mysql+jsp)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于ssm的多人命题系统。技术交流和部署相关看文章末尾&#xff01; 开发环境&#xff1a; 后端&#xff1a; 开发语言&#xff1a;Java 框架&…

JavaWeb 前后端分离

AJax 1. 前端视图 ajax\src\main\webapp\ajax-register.html <html><head><meta charset"UTF-8"> </head><body><form class"form-horizontal" role"form"><div><tr><td>账号</td&…

谁能成为首个RedCap规模商用的厂商?

RedCap在“降本、小尺寸、低功耗”的呼声中逐渐成为后5G时代的宠儿&#xff0c;随着相关技术的成熟&#xff0c;RedCap如何进一步商用成为行业关注的焦点。RedCap的发展&#xff0c;离不开运营商、芯片厂商、终端厂商、模组厂商等产业关键节点的通力合作。那RedCap离正式商用还…

RT-Thread 互补滤波器 (STM32 + 6 轴 IMU)

作者&#xff1a;wuhanstudio 原文链接&#xff1a;https://zhuanlan.zhihu.com/p/611568999 最近在看无人驾驶的 Prediction 部分&#xff0c;可以利用 EKF (Extended Kalman Filter) 融合不同传感器的数据&#xff0c;例如 IMU, Lidar 和 GNSS&#xff0c;从而给出更加准确的…

Ribbon负载均衡

Ribbon负载均衡 负载均衡一般分为服务器端负载均衡和客户端负载均衡 所谓服务器端负载均衡&#xff0c;比如Nginx、F5这些&#xff0c;请求到达服务器之后由这些负载均衡器根据一定的算法将请求路由到目标服务器处理 所谓客户端负载均衡&#xff0c;比如我们要说的Ribbon&#…

Spring - 更简单的存取 Bean 对象(使用注解)

目录 一、类注解是什么 二、使用类注解 存取 Bean 对象 1. 准备工作 2. 所以使用五大类注解的规则&#xff1a; 三、五大类注解之间的关系 1. 首先可以查看 类注解的源码如下图&#xff1a; 2. 为什么需要五个类注解&#xff1f; 3. 为什么使用类注解的方式不能使用原类…

使用腾讯云轻量应用服务器搭建网站教程

腾讯云轻量应用服务器怎么搭建网站&#xff1f;太简单了&#xff0c;轻量服务器选择宝塔Linux镜像&#xff0c;然后在宝塔面板上添加站点&#xff0c;以WordPress建站为例&#xff0c;腾讯云服务器网来详细说下腾讯云轻量应用服务器搭建网站全流程&#xff0c;包括轻量服务器配…

A Simple Framework for Contrastive Learning of Visual Representations(论文翻译)

A Simple Framework for Contrastive Learning of Visual Representations 摘要1介绍2 方法2.1 对比学习框架2.2 训练大批量数据2.3 评估协议 3.用于对比表示学习的数据增强3.1.数据增强操作的组合对于学习良好的表示至关重要3.2 对比学习需要更强的数据增强比有监督学习 4. 编…