Учебное пособие по Eclipse SWT Hello world: дисплей не может быть преобразован в тип

Я только что установил Eclipse Luna v 4.4.2. Я просматривал учебные пособия после установки пакетов Java Developer Tools и Plug-in Development Environment. Базовая программа 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

Вот что я сделал:

  • Установлен Eclipse 4.4.2 (Luna) с помощью программного приложения в Fedora 21.
  • Поняв, что на самом деле он не поставляется с JDT и PDE, как было обещано, я установил эти пакеты из репозитория Eclipse Luna, используя справку Eclipse > установить новое программное обеспечение.
  • Перешел в «Файл»> «Импорт»> «Разработка подключаемых модулей»> «Подключаемые модули и фрагменты» и импортировал org.eclipse.swt.gtk.linux.x86_64 со следующими спецификациями в соответствии с инструкциями руководства.

    • Import from: The active target platform
    • Плагины и фрагменты для импорта: выберите из всех плагинов и фрагментов, найденных в указанном месте.
    • Импортировать как: проекты с исходными папками
  • Добавлен org.eclipse.swt.gtk.linux.x86_64 в путь сборки моего проекта.
  • Щелкните правой кнопкой мыши открытый файл класса и выберите «Источник»> «Организовать импорт».

Когда проект не скомпилировался, я последовал совету из этот пост на форумах сообщества eclipse и установил все пакеты SWT из репозитория luna с помощью функции Eclipse «установить новое программное обеспечение». Затем я полностью удалил проект, закрыл Eclipse, снова открыл его, перешел в другое рабочее пространство и попытался повторить весь учебник снова, но безрезультатно.

Затем я попытался добавить эти операторы импорта в начало файла класса:

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

Но Eclipse сказал, что пакет org.eclipse не может быть разрешен. Однако пакет был доступен мне в проводнике пакетов, поэтому я искал файлы классов в операторах импорта. Когда я открыл org.eclipse.swt.widgets.Display, вверху появилось это сообщение:

К файлу Display.class не прикреплен исходный файл.

Похоже, это, вероятно, источник (без каламбура) моей проблемы. Я не нашел ничего полезного в дальнейших поисках Google. Любая помощь в компиляции и понимании того, почему нет исходных файлов, прикрепленных к файлам классов, приветствуется.

Спасибо.


person Ian Riley    schedule 29.03.2015    source источник
comment
Не ответ на ваш вопрос, но имхо, вам было бы лучше, если бы вы напрямую загрузили установщик Oomph и используйте этот. Сэкономил бы вам много времени.   -  person lschuetze    schedule 29.03.2015
comment
Спасибо ishuetze, буду разбираться   -  person Ian Riley    schedule 30.03.2015


Ответы (2)


Я знаю, что это старый пост, но сегодня я столкнулся с этой проблемой, и то, что, как я думал, будет просто исправить, заняло у меня несколько часов.

Это решение, которое я использовал.

Я на Windows 10, с

Eclipse J2EE 2019-09-17 R версия

, но версия RCP тоже работала. Я пробовал JAVA JDK 9, 10, 11 и, наконец,

ЯВА JDK 1.8

и с этой версией SWT:

org.eclipse.swt.win32.win32x86_64

Я заставил его работать. Я ввел его как зависимость проекта только потому, что пытался добавить файл jar в качестве переменной и в качестве внешнего jar, но ничего не получилось.

Ниже приведен скриншот его успешного запуска:

Привет, мир SWT

person James Drinkard    schedule 17.10.2019

Попробуйте щелкнуть правой кнопкой мыши -> быстрые исправления -> импортировать org.eclipse.swt.widgets.Shell в свой каталог.

person user3701359    schedule 19.05.2016