如何使用第三方jar文件运行代码?

时间:2012-03-19 13:03:18

标签: java jar

我正在尝试做一些非常简单的事情,但我不知道该怎么做。我有一个第三方jar文件,它有类定义。我有一个主要方法的课程。主类使用jar文件中的类。我用这个命令选项编译。没有错误投诉。

javac -classpath party.jar mymain.java

当我尝试运行程序时,出现以下错误:

java -jar party.jar myMain

Exception in thread "main" java.lang.NullPointerException at sun.launcher.LauncherHelper.getMainClassFromJar(LauncherHelper.java:399)
        at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:463)

我想我需要在jar文件中添加Main-Class选项。但我不允许更改party.jar文件,因为它属于第三方。我需要做什么才能运行我的程序?我需要创建自己的jar文件吗?如果是,我需要包含哪些内容?

这是确切的命令和输出

myjar] $ javac -cp party.jar mymain.java

myjar] $ java -cp party.jar mymain

错误:无法找到或加载主类mymain

2 个答案:

答案 0 :(得分:2)

您应该尝试使用java -cp party.jar myMain。 使用-jar告诉JVM在给定的jar文件中查找您的类。但是如果我理解正确的话,party.jar不包含你的myMain类。所以你只需告诉Java你希望使用-cp选项使用party.jar中的类(就像你编译时那样),但是从你所在的目录中取出myMain类。

答案 1 :(得分:0)

您应该尝试使用java -cp party.jar;改为使用myMain。如果您使用多个jar文件,请在每个文件后放置分号。切记在主类名称(此处为myMain)之前,在最后一个分号之后放置空格。 希望如此。