Run class in Jar file
Assuming you are in the directory where myJar.jar
file is and that myClass
has a public static void main()
method on it:
You use the following command line:
java -cp ./myJar.jar myClass
Where:
myJar.jar
is in the current path, note that.
isn't in the current path on most systems. A fully qualified path is preferred here as well.myClass
is a fully qualified package path to the class, the example assumes thatmyClass
is in the default package which is bad practice, if it is in a nested package it would becom.mycompany.mycode.myClass
.
You want:
java -cp myJar.jar myClass
The Documentation gives the following example:
C:> java -classpath C:\java\MyClasses\myclasses.jar utility.myapp.Cool
Use java -cp myjar.jar com.mypackage.myClass
.
If the class is not in a package then simply
java -cp myjar.jar myClass
.If you are not within the directory where
myJar.jar
is located, then you can do:On Unix or Linux platforms:
java -cp /location_of_jar/myjar.jar com.mypackage.myClass
On Windows:
java -cp c:\location_of_jar\myjar.jar com.mypackage.myClass
There are two types of JAR files available in Java:
Runnable/Executable jar file which contains manifest file. To run a Runnable jar you can use
java -jar fileName.jar
orjava -jar -classpath abc.jar fileName.jar
Simple jar file that does not contain a manifest file so you simply run your main class by giving its path
java -cp ./fileName.jar MainClass