Проблема автодополнения Eclipse - PullRequest
14 голосов
/ 19 марта 2011

Только что установил Eclipse Helios (Win7 64) и у меня странная проблема. Я набираю syso-Ctrl-Space, который должен завершиться до System.out.println (""), но он не работает! Я искал в Интернете около часа, я установил Preferences> Java> Editor> Content Assist по умолчанию, ничего. Все остальное вроде работает. Идеи?
Чтобы было ясно: ярлык работает, он завершает все, кроме «syso», как было показано ранее, на syso (также пробовал sysout) он говорит «Нет предложений по умолчанию». Я не смог найти такие ярлыки в Content Assist, но все равно установил их по умолчанию.

Ответы [ 11 ]

17 голосов
/ 24 сентября 2011

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

Windows->Preferences->Java->Editor->Content Assist->Advanced

И убедитесь, что у вас есть только одна запись для syso (в меню Шаблоны ).

8 голосов
/ 19 марта 2011

Я считаю, что правильным шаблоном является "sysout", и я верю, что его можно настроить где-то, но не могу сказать, где.Попробуйте sysout, а затем Ctrl + Пробел. Это шаблон, вы можете найти все шаблоны в

Окно -> Настройки -> Java -> Редактор -> Шаблоны

Там вы можете видеть, что имя шаблонаis "sysout", это тогда вызовет подстановку строки для System.out.writeln (), но вы можете изменить как имя шаблона (если вы предпочитаете syso), так и / или реальный код, полученный при вызове шаблона

Приветствия

4 голосов
/ 26 июля 2015

Я использую Eclipse Galileo и у меня была такая же проблема. Даже после попытки предложенных выше решений, но это не сработало. После внесения приведенных ниже изменений оно, наконец, выходит.

  1. Перейдите в Windows-> Настройки-> Java-> Редактор-> Шаблоны
  2. Выберите шаблон sysout и отредактируйте его.
  3. Измените контекст с оператора Java на Java.

И это сработало для меня. Я надеюсь, что это будет полезно для вас.

3 голосов
/ 19 марта 2011

Как сказал Питер, он находится в Window -> Java -> editor -> templates.Найдите строку со следующими значениями:

sysout"Утверждения Java" "Печать в стандартный вывод" "на"

, предварительный просмотр должен быть следующим ...

System.out.println(${word_selection}${});${cursor}
1 голос
/ 18 июля 2014

Просто перейдите по следующему адресу:

Windows-> Настройки-> Java-> Редактор-> Помощник по содержимому-> Дополнительно

и нажмите Восстановить по умолчанию .......... это все

это снова работает как очарование.

1 голос
/ 20 января 2013

Вы можете попытаться установить ярлык Content Assist с помощью ALT + L, если он работает, тогда вы можете снова выбрать свой любимый ярлык.(Сочетание клавиш Ctrl + Space конфликтует с ярлыком переключения метода ввода).В eclipse в linux ярлык завершения слов - ALT + /, поэтому, если вы установите его как ярлык для Content Assist, он также конфликтует.)

1 голос
/ 17 марта 2012

Ваш курсор должен находиться в месте, где было бы законно получить эту строку. Если ваш курсор находится в определении метода и вы вводите syso, вы получите замену. Однако, если ваш курсор находится в той части текста, которая находится вне определения любого метода, например, где вы объявляете переменные для вашего класса, syso не будет предлагать недопустимую строку system.output.println () ;.

У меня была эта проблема, прочитал все ответы здесь, убедился, что она ДОЛЖНА работать в моей копии, и понял, что я печатал syso BOWOW закрытие} моего последнего метода, а не в методе.

Затмение включено!

0 голосов
/ 11 декабря 2014

Возможно, у вас перекрывающиеся комбинации клавиш. Перейдите к разделу «Обзор», а не к подразделу «Ключи». Введите «Ctrl + пробел» в разделе «Фильтр текста». Вы должны увидеть «помощник по содержимому» и, возможно, другую команду с таким же ярлыком. Если существует другой ярлык, замените его на другой.

0 голосов
/ 09 декабря 2014

ЗАГРЯЗНЕНИЕ: Вы можете попробовать следующий код AutoHotkey, если вы по-прежнему испытываете трудности, как и я (все еще не смог исправить это сам)

#persistent
#ifwinactive ahk_class SWT_Window0  ; eclipse java
:*:syso::
sendraw System.out.println()`;
loop, 2
    send {left}
return
#ifwinactive

Вам нужно записать это в файл .ahk и запустить его (необходимо установить AutoHotkey). Вы можете поместить этот файл в папку автозагрузки. Это очень полезный инструмент, возможно, вы захотите расширить его однажды.

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

Только что нашли решение для Eclipse Luna: напишите syso и нажмите CTRL + Пробел и нажмите «включить интеллектуальное завершение кода», и все готово.Я уверен, что вы также можете найти его где-то в настройках, но так быстро и просто!

...