Cobertura (Coverage Tool): How to display the form

  • Thread starter Thread starter zak100
  • Start date Start date
  • Tags Tags
    Form
Click For Summary
SUMMARY

The forum discussion centers on using Cobertura 2.1.1 for code coverage on Ubuntu 18.04. The user, Zulfi, encounters issues executing the EC-Cobertura.jar file due to a "no main manifest attribute" error. The discussion highlights the need to run Java applications using the correct command syntax, specifically using the `java -cp` or `java -jar` commands. Additionally, it emphasizes that the absence of a manifest file in the JAR requires specifying the main class explicitly.

PREREQUISITES
  • Understanding of Java command-line tools
  • Familiarity with JAR file structure and execution
  • Basic knowledge of Ubuntu command line
  • Experience with Cobertura for code coverage analysis
NEXT STEPS
  • Learn how to create a manifest file for JARs in Java applications
  • Research the Java `-cp` option for classpath management
  • Explore the Cobertura documentation for advanced usage
  • Investigate troubleshooting techniques for JAR execution errors
USEFUL FOR

Java developers, software testers, and DevOps engineers looking to implement code coverage analysis using Cobertura.

zak100
Messages
462
Reaction score
11
TL;DR
I am trying to run cobertura. I found a website which displays a for but I can't display it. I want to know how to display the form,
Hi,
I want to use cobertura for coverage. I followed the following link:
https://electric-cloud.com/plugins/directory/p/cobertura/
That link provides a EC-Cobertura.jar file through download. I think it creates a parameter for passing arguments to cobertura. I am trying to run EC-Cobertura.jar but its giving me error:

~/cobertura$ ls -l EC-Cobertura.jar

-rw-rw-r-- 1 zulfi zulfi 165174 Mar 8 17:53 EC-Cobertura.jar

:~/cobertura$ java -jar EC-Cobertura.jar

no main manifest attribute, in EC-Cobertura.jar

:~/cobertura$ sudo apt-get install binfmt-support

[sudo] password for zulfi:

Reading package lists... Done

Building dependency tree

Reading state information... Done

binfmt-support is already the newest version (2.1.8-2).

binfmt-support set to manually installed.

0 upgraded, 0 newly installed, 0 to remove and 258 not upgraded.

:~/cobertura$ ./EC-Cobertura.jar

bash: ./EC-Cobertura.jar: Permission denied

:~/cobertura$ chmod a+rx EC-Cobertura.jar

zulfi@lc2530hz:~/cobertura$ ./EC-Cobertura.jar

no main manifest attribute, in /home/zulfi/cobertura/EC-Cobertura.jar

:~/cobertura$
I have already downloaded the cobertura and its installed on my ubuntu 18.04.
:~$ whereis cobertura-instrument

cobertura-instrument: /usr/bin/cobertura-instrument /usr/share/man/man1/cobertura-instrument.1.gz

:~$
And it has the same version as the tar file provides whose link is :
https://sourceforge.net/projects/cobertura/
provided in the link of the associated help button page:
:~$ cobertura-instrument -version

Cobertura 2.1.1 - GNU GPL License (NO WARRANTY) - See COPYRIGHT file

[INFO] Cobertura: Saved information on 0 classes.

[INFO] Cobertura: Saved information on 0 classes.

:~$
But the help file does not say anything about the jar file. I still don't know how to execute the jar file and how to display the form shown on the link:
http://downloads.electric-cloud.com/plugins/EC-Cobertura/EC-Cobertura_help.xhtmlSomebody please guide me how to display the form? What is the purpose of EC-Cobertura.jar in this connection.
Zulfi.
 
Technology news on Phys.org
When there's no manifest then you have to run a java app via the java command.

$ java -cp <your_jar_file_path> xxx.yyy.zzz.<The_App_Name>

or

$ java -jar <your_jar_file_path> xxx.yyy.zzz.<The_App_Name>

The -cp adds the app's jar to the classpath that java searches. The xxx.yyy.zzz.<The_App_Name> is the class containing the app's main method. The java command will search for the xxx.yyy.zzz.<The_App_Name> in all jars in the classpath which then causes other classes to be loaded.

https://stackoverflow.com/questions/15626369/how-to-run-java-jar-without-manifest-mf

The reference below has other ways of building and/or running the jar file:

https://exceptionshub.com/cant-execute-jar-file-no-main-manifest-attribute.html
 
  • Like
Likes   Reactions: sysprog