有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Eclipse SWT Hello world教程:无法将显示解析为类型

我刚刚安装了EclipseLunaV4.4.2。在安装Java开发人员工具和插件开发环境包之后,我正在运行教程。基本的HelloWorld程序运行良好。但是,SWT版本编译失败,出现以下错误:

Exception in thread "main" java.lang.Error: Unresolved compilation problems:

Display cannot be resolved to a type

Shell cannot be resolved to a type

以下是我所做的:

  • 使用Fedora21中的软件应用程序安装了Eclipse4.4.2(Luna)
  • 在意识到它实际上并没有像承诺的那样随JDT和PDE一起提供之后,我使用Eclipse帮助>;安装新软件
  • 转到文件>;进口>;“插件开发”>;“插件和片段”和导入的组织。日食swt。gtk。linux。根据本教程的说明,具有以下规格的x86_64

    • 从:活动目标平台导入
    • 要导入的插件和片段:从指定位置找到的所有插件和片段中选择
    • 导入为:包含源文件夹的项目
  • 新增组织。日食swt。gtk。linux。x86_64到我的项目的构建路径
  • 右键单击打开的类文件并选择源>;“组织导入”

当项目无法编译时,我遵循eclipse社区论坛上this post的建议,使用eclipse的“安装新软件”功能安装了luna repo的所有SWT包。然后,我完全删除了这个项目,关闭了Eclipse,重新打开它,转到另一个工作区,并试图重新编写整个教程,但没有效果

然后,我尝试将这些导入语句添加到类文件的顶部:

import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

但是Eclipse说这个包是org。无法解析eclipse。但是,包在包资源管理器中对我可用,因此我在import语句中查找类文件。当我打开org时。日食swt。小部件。显示,它在顶部显示此消息:

There is no source file attached to the file Display.class

看来这可能是我问题的根源(不是双关语)。在进一步的谷歌搜索中,我没有发现任何有用的东西。非常感谢您为编译和理解类文件中为什么没有附加源文件而提供的任何帮助

谢谢


共 (3) 个答案

  1. # 1 楼答案

    我也有同样的问题;然后我将Java Compliance level(在Preferences>;Java Compiler中)更改为Preferences中的1.8,它就可以工作了

  2. # 2 楼答案

    尝试右键单击->;快速解决方案->;导入组织。日食swt。小部件。将Shell发送到您的目录

  3. # 3 楼答案

    我知道这是一篇老帖子,但我今天遇到了这个问题,我认为解决这个问题很简单,花了我几个小时

    这就是我使用的解决方案

    我在Windows 10上,有

    Eclipse J2EE 2019-09-17 R version

    ,但RCP版本也起到了作用。我尝试了JavaJDK9、10、11,最后

    JAVA JDK 1.8

    对于这个版本的SWT:

    org.eclipse.swt.win32.win32x86_64

    我成功了。我只是在尝试将jar文件作为变量和外部jar添加时才将其作为项目依赖项引入,但没有任何效果

    下面是它成功运行的屏幕截图:

    Hello World SWT