Попытка установить Emacs JDEE с openjdk 6 - PullRequest
0 голосов
/ 22 марта 2011

Я пытаюсь заставить 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 ничего не получилось.

Что мне не хватает?

Спасибо!

1 Ответ

0 голосов
/ 25 марта 2011

Если вы посмотрите Руководство пользователя в разделе «Завершение выражений», вы можете найти функцию jde-complete.По умолчанию эта функция связана с «Cc Cv C-».,Может быть, вы пропустили это.:)

...