关于运行JAR包中的class

来源:互联网 发布:网红淘宝店前十名 编辑:程序博客网 时间:2024/06/05 11:03
关于运行JAR包中的class

http://datamining.xmu.edu.cn/bbs/forum.php?mod=viewthread&tid=220


jar包中含有多个.class文件,如test.jar 包中包含test1.class,test2.class,test3.class,且这些文件都包含main函数
要运行test1中的main函数,在命令行中先进入jar所在目录,然后输入以下命令即可运行test1
java -classpath test.jar test1
如果还有其他参数设置,可以在以上命令后面跟上参数。

命令格式:
  1. java -classpath [jar-name] [filename]
复制代码
jar-name: jar文件名
filename: 包含main函数的.class文件


读了fiona这篇文章,很有启发。
基本上运行JAR的包,我们都用
  1. java -jar XXX.jar -args1 -args2
复制代码
这是建立在我们的jar包里配置了main函数的入口是哪个class的基础上。因为我们在导出JAR包的时候都会选择一个默认的main入口class。

有些时候我们需要运行一个JAR包里面的多个带有main的函数,这个时候就比较麻烦。可以运用@fiona提到的方法。
  1. java -classpath XXX.jar main1 -args1 -args2
复制代码
这个命令的理解是这样的,将XXX.jar包当作外部包加入到classpath中,如此,在后面直接运行main1.class。
而如果这个filename不是在默认的package里,假如在一个名字为homework的package里,那么运行时应该该为:
  1. java -classpath XXX.jar homework.main1 -args1 -args2
复制代码
用这种方式就可以随意运行JAR包中带有main入口的class。

其实就像我们用命令javac去编译好filename.java,在用java filename去运行程序一样。

0 0
原创粉丝点击