用Eclipse创建的Jar文件:找不到主类:UI.MainWindow.程序将退出



我有一个用Eclipse开发的Java应用程序。我尝试将其导出为.jar文件,以便独立运行它,但是如果我尝试使用命令

运行它

java -jar application.jar

我得到这个错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/jfree/data/xy/XYDataset
 Caused by: java.lang.ClassNotFoundException: org.jfree.data.xy.XYDataset
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccesController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$%AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)

找不到主类:UI.MainWindow。程序将退出

目前,主类是MainWindow.class。它包含公共静态void main(String[] args)方法。我已经检查了舱单。

  Manifest-Version: 1.0
  Main-Class: UI.MainWindow

我正在使用Eclipse IDE for Java Developers version: Helios Release,在64位Windows 2008系统上。

我该怎么办?我怎么解决这个问题呢?/jfree/data/xy/xydataset错误的意义是什么?

谢谢

这通常是当一个或多个所需的依赖jar文件不包含在您的类路径上时发生的情况,并且从您包含的MANIFEST片段来看,似乎这是您的问题。

另一个注意事项,您可能想要使用Export Runnable Jar功能,这保证您导出的jar将工作,给定您的Runtime Configuration用作导出该jar的模板是正确的。

你可以做两件事

  1. 在类路径中使用依赖jar启动java应用程序。
    java -cp jfreechart-1.x.x.jar -jar application.jar

  2. 在MANIFEST中添加Classpath选项。MF如下
    Manifest-Version: 1.0
    主类:UI。主窗口- path: & lt;jfreechart-1.x.x.jar>

这意味着在你的代码中没有找到main()方法- org/jfree/data/xy/XYDataset

可能的原因是org。Jfree库jar不存在于类路径

1。您可以尝试将库放入jdk类路径
2.然后导出jar并运行

lib path will be
$JDK_HOMEjrelibext
$JDK_HOME is your jdk installation root path

我在Google Web Toolkit示例Web应用程序创建中得到了类似的结果。这是错误的,因为Java编译器设置为1.6,而GWT v2.6需要jdk 1.7 +。我切换了jdk和版本。GWT能够进行编译。

相关内容

  • 没有找到相关文章

最新更新