|
|
本帖最后由 xmubingo 于 2011-8-13 18:35 编辑
引用自 @fiona
jar包中含有多个.class文件,如test.jar 包中包含test1.class,test2.class,test3.class,且这些文件都包含main函数
要运行test1中的main函数,在命令行中先进入jar所在目录,然后输入以下命令即可运行test1
java -classpath test.jar test1
如果还有其他参数设置,可以在以上命令后面跟上参数。
命令格式:- java -classpath [jar-name] [filename]
复制代码 jar-name: jar文件名
filename: 包含main函数的.class文件
读了fiona这篇文章,很有启发。
基本上运行JAR的包,我们都用- java -jar XXX.jar -args1 -args2
复制代码 这是建立在我们的jar包里配置了main函数的入口是哪个class的基础上。因为我们在导出JAR包的时候都会选择一个默认的main入口class。
有些时候我们需要运行一个JAR包里面的多个带有main的函数,这个时候就比较麻烦。可以运用@fiona提到的方法。- java -classpath XXX.jar main1 -args1 -args2
复制代码 这个命令的理解是这样的,将XXX.jar包当作外部包加入到classpath中,如此,在后面直接运行main1.class。
而如果这个filename不是在默认的package里,假如在一个名字为homework的package里,那么运行时应该该为:- java -classpath XXX.jar homework.main1 -args1 -args2
复制代码 用这种方式就可以随意运行JAR包中带有main入口的class。
其实就像我们用命令javac去编译好filename.java,在用java filename去运行程序一样。 |
|