在Jar文件中运行类
如果在/ myfolder中有一个名为myJar.jar
的jar文件,并且想从中使用名为myClass
的类,那么如何从命令行执行?
我认为这将是进入目录并说java -cp myJar.jar.myClass
但是这是行不通的。 任何帮助,将不胜感激。
使用java -cp myjar.jar com.mypackage.myClass
。
-
如果这个类不在一个包中,那么就简单地使用
java -cp myjar.jar myClass
。 -
如果您不在
myJar.jar
所在的目录中,则可以执行以下操作:-
在Unix或Linux平台上:
java -cp /location_of_jar/myjar.jar com.mypackage.myClass
-
在Windows上:
java -cp c:\location_of_jar\myjar.jar com.mypackage.myClass
-
你要:
java -cp myJar.jar myClass
文档给出了以下例子:
C:> java -classpath C:\java\MyClasses\myclasses.jar utility.myapp.Cool
它们是java中可用的两种JAR文件
-
包含清单文件的Runnable / Executable jar文件。 运行Runnable jar可以使用
Java -jar fileName.jar
或java -jar -classpath abc.jar fileName.jar
-
简单的jar文件这些不包含清单文件,所以你简单地通过给它的path运行你的主类
java -cp ./fileName.jar MainClass
假设你在myJar.jar
文件所在的目录下,并且myClass
有一个public static void main()
方法:
您使用以下命令行:
java -cp ./myJar.jar myClass
哪里:
-
myJar.jar
在当前path中 ,请注意.
在大多数系统中不在当前path中。 这里也是一个完全合格的path 。 -
myClass
是类的完全限定包path ,该示例假定myClass
处于默认包中,如果它位于嵌套包中,则为com.mycompany.mycode.myClass
。