SWT错误:线程中的异常" main" java.lang.NoClassDefFoundError:org / eclipse / swt / graphics / Device

时间:2016-02-26 20:49:32

标签: java eclipse swt

我正在使用SWT制作软件。我使用自定义Manifest文件将它从eclipse导出到JAR文件:

Manifest-Version: 1.0
Class-Path: swt.jar 
Main-Class: db_hud.HUD_Maker

我的导航菜单看起来像这样

Java Project
   - bin
   - src
     + db_hd
       > HUD_Maker.java
       > Classes.java
   - Logfile.txt
   - Manifest.txt
   - swt.jar
   - .classpath
   - .project
org.eclipse.swt
   -All the stuff for SWT (jar, .classpath, etc.)

我的classpath中有swt.jar和lib。我尝试更改清单文件中的Main-Class,最后包含.java,它说'#34; Main Class not found"我不知道如何重现这个错误,因为我不知道它的原因是什么。如果我这样做,我不会寻找这个问题的解决方案。

我已尝试将其作为带有清单文件的JAR导出,但我在控制台中获得的是:

 Exception in thread "main" java.lang.NoClassDefFoundError:

如果我只是双击我得到一个JNI错误。不知道那是什么......

任何人都可以帮助我吗?或者这个信息太少了?

1 个答案:

答案 0 :(得分:0)

将您的java代码导出到jar文件,例如 hudmaker.jar 然后将你的jar和swt.jar放在一个目录中。 swt.jar库可以从eclipse [1]下载。打开命令行并切换到该目录。

然后启动你的代码就像这样

java.exe -Djava.library.path="." -cp "hudmaker.jar;swt.jar" db_hud.HUD_Maker

作为替代方案,您可以创建一个可执行jar [2]。

[1] https://www.eclipse.org/swt/

[2] http://help.eclipse.org/mars/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Ftasks%2Ftasks-37.htm