我已经从Java Eclipse应用程序导出了JAR文件并且它正常工作。 这是出口时的表现:
此JAR无法正常运行。它返回以下错误:
有我的主要课程:
package testJarFileProject;
import javax.swing.JOptionPane;
class testJarFileProject {
public static void main(String[] args) {
// TODO Auto-generated method stub
JOptionPane.showOptionDialog(null,
"my application",
"show",
JOptionPane.OK_CANCEL_OPTION,
(Integer) 0,
null,
new String[]{"ok"},
"default");
}
}
有什么问题?导出jar文件不正确虽然它没有给我一个错误? 任何帮助 谢谢
答案 0 :(得分:0)
你应该明白当你“打开”你的罐子时会发生什么。我相信你的意思是你双击它。
如果我的假设是正确的,那么你的jar就会被“执行”,即执行如下命令行:java -jar yourjar.jar
。
在这种情况下真的发生了什么? JVM打开jar并尝试访问应包含以下行的文件META-INF/MANIFEST.MF
:
Main-Class: com.company.MyClass
JVM提取完全限定的类名,并尝试执行等同于:
的操作 java -cp yourjar.jar com.company.MyClass
如果在jar中找不到类com.company.MyClass
,则会打印出您发送的错误消息。
现在您拥有了发现问题的所有工具。首先,尝试使用java -cp yourjar.jar com.company.MyClass
之类的命令运行程序。如果错误仍然检查jar:它没有主类。如果问题消失,请检查清单。它包含错误。
如果一切正常,请检查编译器和JVM版本的兼容性。可能是使用比用于运行程序的JVM更高版本的编译器编译代码。
祝你好运。