5

我在 Tomcat 上部署了一个 Web 应用程序。在我进入更多细节之前,让我拼出版本。

版本:jdk 1.7,Tomcat - 7.0.19,jacoco -0.5.6

我已将 jdk1.7 添加到 Tomcat。在我添加的 \apache-tomcat-7.0.19\bin\startup.bat 文件中。

SET JAVA_HOME=C:\ProgramFiles\Java\jdk1.7.0

我还向 Tomcat 添加了 jacoco 代理。在 apache-tomcat-7.0.19\bin\catalina.bat 我添加了。

SET JACOCO=-javaagent:<my download folder>\jacoco-0.5.6.201201232323\lib\jacocoagent.jar=destfile=C:\jacoco.exec,append=true,includes=* 
set JAVA_OPTS=%JAVA_OPTS% %JACOCO%

现在,当我启动 Tomcat 并点击我的 Web 应用程序时,正如预期的那样,有一个 C:\jacoco.exec 文件。

我现在已经将代码移动到以下目录结构 jacoco.exec /bin/ /coveragereport

现在我使用了http://www.eclemma.org/jacoco/trunk/doc/examples/java/ReportGenerator.java中的 ReportGenerator 类。我在 /coveragereport 目录中有一堆 HTML 格式的报告。但是,所有代码都显示为未触摸。虽然在我启动 Tomcat 之后,我已经访问了http://localhost :/ 并四处浏览。我希望得到报告的覆盖率。

我错过了一些非常基本的东西。请帮忙。

4

3 回答 3

8

Tomcat 将在关机时写入 Jacoco 文件。

于 2012-04-12T08:17:01.997 回答
5

或者,您可以使用ant dump 任务

jacoco:dump address="server.example.com" reset="true" destfile="remote.exec"/>

但要使其正常工作,您必须output mode tcpserverjava agent指定。

-javaagent:[yourpath/]jacocoagent.jar=output=tcpserver,address=<host>,port=<port>,...
于 2012-04-17T08:33:14.050 回答
1

6300 是提供的默认端口。您可以更改端口,也可以查找可以使用监听的空闲端口netstat -an | grep "LISTEN"

于 2013-10-04T01:05:11.137 回答