免责声明
:
这是.NETGUI试图解决JAVA问题的典型案例。
我正在尝试用JFace和SWT构建一个非常简单的GUI——代码很简单(有很多教程),但不那么简单的是,我似乎无法让JFace和SWT在插件项目之外工作。
我希望能够在我的项目中毫不费力地使用JFace和SWT,因为我将“C:/Eclipse3.5/插件”放在我的类路径中(从我的计算机-->属性-->高级-->环境变量)以及我可以在路径中找到的所有swt-*.dll(当然,包括本地用户路径和全局路径),如下所示
this article
在“安装SWT和JFace”框中指示。
问题是我无法从eclipse.org导入任何内容,除非我直接引用buildpath中的jar-->图书馆-->添加外部JAR(为了构建它,我必须添加以下JAR:
org.eclipse.swt.win32.win32.x86_3.5.1.v3555a.jar
,
org.eclipse.jface_3.5.1.M20090826-0800.jar
作为
还有别的吗?):
Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/core/runtime/IProgressMonitor
at demo.ui.test.EntryPoint.main(EntryPoint.java:18)
Caused by: java.lang.ClassNotFoundException: org.eclipse.core.runtime.IProgressMonitor
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 1 more
我试着调试它,基本上只要它尝试实例化
ApplicationWindow
ApplicationWindow w = new ApplicationWindow(null); //<-- error on this line
w.setBlockOnOpen(true);
w.open();
Display.getCurrent().dispose();
问题:
:我如何修复上面的错误(我想知道发生了什么)并让该死的东西运行?
问题2
:为什么JAR对我的项目不可见,以及如何制作它们?
由于不熟悉Java和eclipse,我可能遗漏了一些非常琐碎的东西。非常感谢您的帮助!
编辑
http://www.eclipsezone.com/eclipse/forums/t60528.html
-虽然不太清楚他们是如何解决的,但我们很感激他们的帮助