首页 > 解决方案 > Maven 和 Ant 之间的 JaCoCo 插件

问题描述

我正在尝试使用 Ant 运行我的项目,以对测试代码和这两者的报告进行单元测试和代码覆盖。在我使用 Maven 之前,但我需要一个报表自定义,并且发现使用 Ant 更容易。当我从 Eclipse 生成 build.xml 时,JUnit 是自动导入的:

<pathelement location="../../../../.m2/repository/junit/junit/4.12/junit-4.12.jar"/>

不,我还想在我的 Ant 构建中添加 JaCoCo,这样我就可以同时运行 Junit 和后者。在我在网上找到的许多指南中,我总能找到类似的内容:

<!-- Step 1: Import JaCoCo Ant tasks -->
<taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
    <classpath path="../../../lib/jacocoant.jar" />
</taskdef>

如果我从官方文件下载 JaCoCo,我可以很容易地找到 jacocoant.jar 文件,但我想从像 Maven(或类似的)这样的依赖管理器自动下载它,但是经过多次尝试,我找不到通过 Maven 依赖项对应的“jacocoant.jar”,所以目前我无法将 JaCoCo 添加到我的 Ant 构建中。

有办法让这成为可能吗?

感谢关注!

标签: javamavenantcode-coveragejacoco

解决方案


JaCoCo 主页包含文档链接,其中包含页面“Maven Repository”

以下 JAR 文件可用:

Group ID   | Artifact ID    | Classifier | Description
-----------+----------------+------------+-------------
...
org.jacoco | org.jacoco.ant |            | Ant Tasks
org.jacoco | org.jacoco.ant | nodeps     | Ant Tasks (all dependencies included)
...

最后一个是jacocoant.jar

wget http://repo1.maven.org/maven2/org/jacoco/jacoco/0.8.1/jacoco-0.8.1.zip
unzip jacoco-0.8.1.zip
wget http://repo1.maven.org/maven2/org/jacoco/org.jacoco.ant/0.8.1/org.jacoco.ant-0.8.1-nodeps.jar
sha256sum lib/jacocoant.jar org.jacoco.ant-0.8.1-nodeps.jar

eb375296cb836c202f35b711fee2a41bbeb447b80e54dd1fd05ef6c1d75774e3  lib/jacocoant.jar
eb375296cb836c202f35b711fee2a41bbeb447b80e54dd1fd05ef6c1d75774e3  org.jacoco.ant-0.8.1-nodeps.jar

推荐阅读