Завершение работы Eclipse/Java не работает

Я загрузил, распаковал и установил Eclipse 3.4.2 с некоторыми плагинами (примечание, EPIC, Clearcase, QuantumDB, MisterQ).

Теперь, когда я редактирую проекты Java, выполнение кода не работает. Если я набираю String. и нажимаю ctrl + space, всплывающее окно показывает "Нет предложений по умолчанию", а в строке состояния внизу отображается "Нет доступных завершений".

Любые идеи?

Ответ 1

Попробуйте восстановить параметры по умолчанию в 'Windows > Preferences > Java > Editor > Content Assist > Advanced'

Пример данных, которые вы видите на этом экране предпочтений, однако не обязательно, что вы в настоящее время имеете.

eclipse content assist setting

(Из Vadim в этом блоге "Content Assist Duplicates в Eclipse (Mylyn)" :
если имеют двойные записи Mylyn, снимите отметку с повторяющихся записей, которые не содержат "(Mylyn)" в их имени)

справочная страница Eclipse определяет список по умолчанию для восстановления:

Выберите виды предложений, содержащиеся в списке по умолчанию :

  • Другие предложения Java,
  • Предложения шаблонов SWT,
  • Предложения шаблонов,
  • Типовые предложения

Ответ 2

Я добавляю ответ здесь, если кто-то другой найдет это в Google. Те же симптомы; другой проблема. Для меня типы кэшей стали коррумпированными.

От http://mschrag.blogspot.co.nz/2009/01/open-type-cant-find-your-class.html

  • Закройте Eclipse
  • Перейдите в рабочую область /.metadata/.plugins/org.eclipse.jdt.core
  • Удалить *.index и savedIndexNames.txt
  • Перезапустите Eclipse и найдите Ctrl + T для типа нарушения. Индексы будут восстановлены.

Ответ 3

Для тех, кто запускает Xfce + с включенным плагином IBus, может быть конфликт между ярлыками клавиатуры.

Дополнительную информацию о моем блоге: http://peter-butkovic.blogspot.de/2013/05/keyboard-shortcut-ctrlspace-caught-in.html

UPDATE

как было предложено комментарием @nhahtdh, добавив дополнительную информацию для прямого ответа: плагин IBus в Xfce по умолчанию использует Ctrl + Space ярлык для переключения раскладки клавиатуры. Чтобы изменить его, перейдите к: Параметры и измените его на все, что вы предпочитаете.

Ответ 4

Проверьте lib вашего проекта. Возможно, у вас есть два таких файла jar, в которых один и тот же класс доступен или говорят, что один класс в коде можно переопределить в двух файлах jar. В этом случае также затмение перестает помогать коду, поскольку оно полностью запутано.

Лучший способ проверить это - перейти к файлу, в котором помощь не работает, и прокомментировать весь импорт там, а затем добавлять импорт по одному и проверять при каждом импорте, если работает служба кодов. Нетрудно найти класс с повторяющимися рефрексами.

Ответ 5

Ни один из них не работал у меня.

Я столкнулся с этой проблемой только после определенного класса. Что, наконец, сработало для меня, было удалить класс-нарушитель и воссоздать его. Проблема решена... тайна не так много!

Ответ 6

Если кто-то приходит сюда и хочет активировать функцию автозаполнения, перейдите к

Preferences -> Java -> Editor -> Content Assist.

Затем в разделе Автоматическая активация введите Триггеры автоматической активации для Java:

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ._

введите описание изображения здесь

Ответ 7

Если вы установили панель инструментов Google для IE, возможно, вы столкнулись с той же проблемой. Потому что панель инструментов захватывает ярлык Ctrl + Space.

Ответ 8

Я столкнулся с этой проблемой и потратил часы, пытаясь разобраться в проблеме. попытался выполнить шаги, упомянутые в разных ответах выше, решение, которое я нашел, находится на том же уровне, что и Мона, но немного отличается. Пытался добавить в качестве комментария к Mona ответ, но никакой опции не было доступно. Проблема с моим затмением была, classpath как-то поврежден, и все банки и зависимые проекты отсутствовали. после взятия последнего .classpath из репозитория, он работал нормально.

Ответ 9

У меня была эта проблема и как @Marc, только на конкретном классе. Я обнаружил, что мне нужно назначить Open With = Java Editor. Как новичок Eclipse я даже не понял, что я просто использовал простой редактор.

В проводнике пакетов щелкните правой кнопкой мыши файл и выберите "Открыть с".

Ответ 10

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

  • Щелкните правой кнопкой мыши проект (тот, над которым вы работаете)
  • Перейдите в "Свойства" > "Путь сборки Java" > "Системная библиотека JRE"
  • Нажмите "Изменить"... справа.
  • Выберите JRE 7

Ответ 11

Убедитесь, что вы не отфильтровываете много параметров внутри окнa > Настройки > Java > Внешний вид > Фильтры типов

Элементы в этом списке не будут отображаться в быстрых исправлениях, быть автозаполненными или появляться в других местах, таких как диалог "Открыть тип".

Ответ 12

Другим решением, которое сработало для меня, является переход на Java → Appearence → Type Filters и отключить все enter image description here

Ответ 13

В моем случае Intellisense исчез только в нескольких классах в одном проекте. Оказалось, что это было из-за отсутствия библиотеки на пути сборки (хотя она работала ранее).

Поэтому обязательно проверьте все ошибки или проблемы в Eclipse и попытайтесь найти, может ли библиотека отсутствовать.

Ответ 14

Я столкнулся с этим, и в итоге я открыл файл с текстовым редактором, а не с редактором java.

Я хотел прокомментировать https://stackoverflow.com/users/607470/elroy-flynn ответ, но комментарий добавления работает только после того, как у меня есть рейтинг 50? не уверен, что WTF...

Спасибо, Том

Ответ 15

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

Моя настройка: старый проект Gradle (версия Gradle 2.12), сделанный кем-то другим, импортированный с помощью мастера импорта градиента в STS (Eclipse Oxygen.2 (4.7.2)).

Завершение кода тоже не сработало (и у меня все еще есть пустое Js в файлах Java), но, по крайней мере, я получил завершение кода для работы:

  • щелкните правой кнопкой мыши папку проекта> Свойства> Град> Настроить параметры рабочей области> Java> Редактор> Контентная поддержка> Дополнительно
  • проверьте "Java-предложения в верхнем окне".
  • 2x Применить и закрыть

Ответ 16

Для меня проблема была в конфликте между несколькими версиями одной и той же библиотеки. Помощник Eclipse использовал более старую версию, чем maven.

Мне пришлось перейти в каталог .m2 и удалить ненужную версию lib + перезапустить eclipse.

Ответ 17

У меня возникают проблемы с Eclipse Neon при редактировании файла, который не принадлежит директории проекта. Когда я копирую тот же файл в корневой каталог проекта, даже в каталог src, завершение начинает работать.

Когда файл открывается из другого каталога, выполняется только завершение работы JRE. Это, например: java. завершается, но junit. не работает.

Ответ 18

После того, как вы проверили конфигурацию и завершение, все еще не работает:

  • убедитесь, что у вас есть правильная структура каталогов.

Вы видите значок справа от файла?:

введите описание изображения здесь

Он расскажет вам, как файл будет обрабатываться Eclipse:

введите описание изображения здесь

Я отправляю этот ответ, поскольку у меня была эта история с артефактом Maven webapp. По умолчанию Maven-WebApp не создает папку для источников, и я помещаю свою Java в ресурсы, задаваясь вопросом, что происходит в течение 5 минут...:)

Ответ 19

На всякий случай кто-то попал в отчаянную точку, где ничего не работает... Случилось так, что контент помог как-то сжался, поэтому никаких предложений не было показано, просто "Нажмите Ctrl + Space для не-Java..." быть увиденным. Таким образом, это просто вопрос перетаскивания угла содержимого, чтобы увеличить всплывающее окно.

Я знаю, смущающе. Надеюсь, что это поможет.

Примечание. Это был сервер Ubuntu с Xfce4 с использованием Eclipse Oxygen.