1、服务启动脚本中加入javaagent
JACOCO_OPTS=" -javaagent:/jacoco/lib/jacocoagent.jar=includes=com.uinnova.*,output=tcpserver,port=6000,address=192.168.1.1"
如果要累计 加入参数:
,append=true
nohup java $JAVA_OPTS $JACOCO_OPTS $JAVA_MEM_OPTS > /dev/null 2>&1 &
2、下载jacoco, 解压
新建一个report目录, 新建build.xml
jacoco目录结构如下
<?xml version="1.0" encoding="UTF-8"?>
<project name="plate_id_sample_service" xmlns:jacoco="antlib:org.jacoco.ant">
<taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
<classpath path="../lib/jacocoant.jar"/>
</taskdef>
<target name="dump">
<!-- address和port和catalina.bat设置保持一致,destfile设置jacoco.exec保存地址 -->
<jacoco:dump address="192.168.1.1" reset="true" port="6000" destfile="../jacoco.exec" append="true"/>
</target>
<target name="report">
<jacoco:report>
<executiondata>
<file file="../jacoco.exec"/>
</executiondata>
<structure name="Example Project">
<!-- 可以按软件功能模块设置多个group,方便在report中查看 -->
<group name="SpringMVC">
<classfiles>
<!--.class文件路径,可以放在客户端-->
<fileset dir="../class"/>
</classfiles>
<sourcefiles encoding="utf-8">
<!--源代码路径,可以放在客户端-->
<fileset dir="../src" />
</sourcefiles>
</group>
</structure>
<!-- report文件保存地址 -->
<html destdir="./report"/>
</jacoco:report>
</target>
</project>
注意: 如果需要累加, 去掉reset="true"
增加:
append="false"
3、拷贝源文件和class到jacoco文件夹下的src 和class(没有新建)文件夹下
4、ant dump
5、生成报告命令: ant report
5、如果集成到jenkins, 也可以用jenkins插件生成报告