I have to write a .sh launching an UI application covered with Jacoco. On exit, a jacoco report must be generated.
I'm not able to generate the jacoco.exec with this simple command :
java -jar ../binaries/editor.debug/application.jar -javaagent:/atgl/products/jacoco/0.6.3/lib/jacocoagent.jar=destfile=jacoco.exec
The first part of the command works fine and launch the program, but the -javaagent option doesn't generate report and the program doesn't launch. If I do a syntax error it's exactly the same behavior.
What's wrong with my command ?
Secondly, this command create a .exec file. How can I generate a .html report in command line ?
The problem was the position of the -javaagent option. It needed to be in first position, like this :
java -javaagent:/atgl/products/jacoco/0.6.3/lib/jacocoagent.jar=destfile=jacoco.exec -jar ../binaries/editor.debug/application.jar
Then as Godin said, it's not possible to generate report in command line. I created an ant file exectoreport.xml with a rule do_jacoco_reports. The rule is launched by a script exectoreport.sh, that must be called after the natural exit of the application.
By using jacococli.jar from jacoco 0.7.9 version, now reports can be generated using command line. I was trying the same and able to generate the report using commandline. If you are able to generate jacoco.exec file successfully use below command to generate the report.
java -jar "your local path/jacococli.jar" report "your local path/jacoco.exec" --classfiles "project path to class files" --html "local path\jacoco-report" --name myReport --sourcefiles "project path\src\main\java"
You should be able to see report in html format. Reference http://www.jacoco.org/jacoco/trunk/doc/cli.html
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With