【问题标题】:How to generate jacoco.exec file on a remote server如何在远程服务器上生成 jacoco.exec 文件
【发布时间】:2017-11-20 14:04:49
【问题描述】:

我正在运行一个 tomcat 服务器,在它的 catalina.sh 中,我导出了 JAVA_OPTS,如下所示。

JAVA_OPTS="$JAVA_OPTS -javaagent:/opt/jacoco/lib/jacocoagent.jar=destfile=/tmp/jacoco.exec,append=true,includes=*"

这会在同一台机器的/tmp 文件夹中生成jacoco.exec 文件。如何在远程机器上生成 exec 文件,例如作为 jenkins 从机的机器,以便我可以通过声纳获得覆盖。

【问题讨论】:

    标签: jenkins sonarqube jacoco test-coverage jacoco-maven-plugin


    【解决方案1】:

    要做到这一点,你需要确保多点:

    1. /opt/jacoco/lib 中的 jenkins 节点上是否有可用的 jacocoagent.jar?

      如果没有,你可以

      • 【解决方案a】要么放在那里,那么基本配置就对了,
      • [解决方案 b] 使用您的代码检查它,或通过 maven 等加载它 - 所以它是您“实施”的一部分 - 例如。我们把它放在我们的执行根目录中,所以我们只有javaagent:jacocoagent.jar
    2. 你需要调整你的日志输出destfile=/tmp/jacoco.exec

      由于这是一条绝对路径,它总是会在那里生成输出,我不确定你是否可以在你的詹金斯工作中从那里访问它

      • [解决方案 A] 将 destfile 设置为像 ./build/jacoco.exec 这样的相对文件,而不是在 jenkins 的工作区中找到它
      • [解决方案 B] 您只是不提供此字段,否则它将被命名为 jacoco.exec 并将位于执行文件夹中
    3. 您需要根据https://docs.sonarqube.org/display/PLUG/Usage+of+JaCoCo+with+Java+Plugin提供此文件的路径

    希望能帮到你:D

    【讨论】:

      猜你喜欢
      • 2019-04-11
      • 2018-01-18
      • 2020-09-15
      • 2013-02-12
      • 2014-04-05
      • 2014-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多