我有一个包含4个类的JAR,每个类都有Main方法。我希望能够根据需要运行其中的每一个。我正在尝试从Linux上的命令行运行它。
E.g. The name of my JAR is MyJar.jar
它具有主要类的目录结构,如下所示:
com/mycomp/myproj/dir1/MainClass1.class
com/mycomp/myproj/dir2/MainClass2.class
com/mycomp/myproj/dir3/MainClass3.class
com/mycomp/myproj/dir4/MainClass4.class
我知道我可以在清单文件中将一个类指定为主类。但是,有什么方法可以在命令行上指定一些参数来运行我希望运行的任何类?
我尝试了这个:
jar cfe MyJar.jar com.mycomp.myproj.dir2.MainClass2 com/mycomp/myproj/dir2/MainClass2.class /home/myhome/datasource.properties /home/myhome/input.txt
我得到了这个错误:
com/mycomp/myproj/dir2/MainClass2.class : no such file or directory
(在上面的命令中,“ / home / myhome / datasource.properties”和“ /home/myhome/input.txt”是命令行参数)。