Eclipse / Java завершение кода не работает - PullRequest
538 голосов
/ 26 мая 2009

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

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

Есть идеи?

Ответы [ 20 ]

1140 голосов
/ 26 мая 2009

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

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

eclipse content assist setting

(Из Вадима в этом посте в блоге «Дубликаты контента в Eclipse (Mylyn)» :
если есть повторяющиеся записи Mylyn, снимите флажки с повторяющихся записей, которые не содержат "(Mylyn)" в своем имени)

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

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

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

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

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

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

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

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

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

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ._

enter image description here

18 голосов
/ 04 мая 2013

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

См. Дополнительную информацию в моем блоге: http://peter -butkovic.blogspot.de / 2013/05 / клавиатура-ярлык-ctrlspace-catch-in.html

UPDATE

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

10 голосов
/ 27 апреля 2011

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

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

9 голосов
/ 30 ноября 2013

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

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

5 голосов
/ 26 мая 2009

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

4 голосов
/ 11 сентября 2014

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

  1. Щелкните правой кнопкой мыши по проекту (тот, над которым вы работаете)
  2. Перейдите в Свойства> Путь сборки Java> Системная библиотека JRE
  3. Нажмите Редактировать ... справа
  4. Выберите JRE 7
4 голосов
/ 01 января 2014

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

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

4 голосов
/ 21 ноября 2013

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...