我正在Eclipse Oxygen中进行内置教程。当我去helloworld项目 - >属性 - > java构建路径 - >项目标签,添加按钮显示为灰色,我无法点击它。该项目选项卡中有两个名为 Modulepath 和 Classpath 的东西,当我点击其中任何一个时,我现在可以单击添加... 按钮并添加org.eclipse.swt
:
但我仍然收到错误消息,请参阅下文。该教程看起来很旧,并且在本教程的说明中无法看到 Modulepath 和 Classpath 。当我在youtube上查看旧版本的教程时,在项目选项卡中都看不到 Modulepath 或 Classpath 。
有什么问题?
错误代码:
Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/swt/widgets/Display
at HelloWorldSWT.main(HelloWorldSWT.java:8)
Caused by: java.lang.ClassNotFoundException: org.eclipse.swt.widgets.Display
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:185)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496)
... 1 more
答案 0 :(得分:0)
Modulepath 对于Java 9来说是一个非常新的东西(在这里你可以看到short video how it can be used)。它存在于当前版本Eclipse Oxygen.1a(4.7.1a),2017年10月11日。
如果您想在普通Java 应用程序(而不是像Eclipse插件这样的OSGi应用程序)中使用SWT,请执行以下操作: G。要运行these SWT Snippets,您必须在选项卡 项目&gt;属性:Java构建路径 ) > 库 使用 < 类路径 (而不是模块路径) em>添加外部JAR ... 按钮。可以在Eclipse安装目录的plugins
子目录中找到JAR:
org.eclipse.swt_<version>.jar
(例如org.eclipse.swt_3.106.1.v20170926-0519.jar
)org.eclipse.swt.<platform>_<version>.jar
(例如org.eclipse.swt.win32.win32.x86_64_3.106.1.v20170926-0519.jar
)org.eclipse.equinox.common_<version>.jar
(例如org.eclipse.equinox.common_3.9.0.v20170207-1454.jar
)