A Java archive file usually holds a manifest file that specifies the main class to start when you invoke java -jar jarfile
. It’s something similar to this:
Main-Class: com.yourcom.package.MyClass
When you distribute your jar file, a user can simply execute it (possibly even with a double click) without knowing anything about your package structure or location of the main class.
But what if you want to execute a different main method in another class inside your jar file, maybe for testing purposes? Well, you don’t have to hack the manifest and re-package. Simply do
java -cp jarfile com.yourcom.package.MyClass
and the main method inside MyClass
will be executed.
I tested and able to call main class..thank you for the post