Я пытаюсь заставить JDE автоматически завершать код Java. Я использую Ubuntu и у меня установлены следующие пакеты:
OpenJDK-6-документ
OpenJDK-6-JDK
OpenJDK-6-JRE
OpenJDK-6-JRE-обезглавленный
OpenJDK-6-JRE Пб
openjdk-6-source
Я установил JDEE "из источника" (не из менеджера пакетов).
Я включил в свой .emacs следующее, как это было предложено в другом потоке (я проверил, что каталоги существуют и, похоже, у них установлено правильное содержимое с пакетами выше):
;;JDEE
(add-to-list 'load-path "/usr/share/emacs/site-lisp/jdee-2.4.0.1/lisp")
(setq
jde-bug-debugger-host-address "127.0.0.1"
jde-bug-jre-home "/usr/lib/jvm/java-6-openjdk"
jde-compile-option-debug (quote ("all" (t nil nil)))
jde-debugger (quote ("jdb"))
jde-global-classpath
(quote ("." "/usr/share/java/" "/usr/lib/jvm/java-6-openjdk/"))
jde-jdk-doc-url "/usr/share/doc/openjdk-6-doc/html/api/index.html"
jde-jdk-registry (quote (("1.6.0" . "/usr/lib/jvm/java-6-openjdk")))
jde-jdk (quote ("1.6.0"))
jde-regexp-jar-file "/usr/share/java/regexp.jar"
jde-sourcepath (quote (".")))
(require 'jde)
При редактировании файла .java такие функции, как M-x jde-compile, работают нормально, локальные классы отображаются на панели скоростей, автозавершение для локальных классов выполняется НО, но не для: например, если я наберу следующее:
import java.io.*;
import java.lang.*;
public class foo {
private String bar;
public static void main(String args[]) {
System.o
}
}
И курсор находится в «System.o», завершение не предлагается, даже когда я пытаюсь выполнить M-x semantic-ia-complete-symbol-menu. (В сообщении говорится: «Не удается найти типы для« Система »»).
Если я наберу "привет". меню дает мне два предложения: основной или бар
Я заметил, что все файлы классов java (io, lang ...) сжаты в /usr/lib/jvm/java-6-openjdk/src.zip и попытался распаковать его, но в emacs ничего не получилось.
Что мне не хватает?
Спасибо!