Я пытаюсь настроить JDEE для emacs 24 на OS X. Когда я создаю файл .java, среда, кажется, загружается автоматически (см. Рисунок), поэтому похоже, правильно установлена. Однако, когда я пытаюсь автозаполнение что-нибудь с помощью M-x jde-complete
(я не обязан это всех ключей, пока) я получаю следующее сообщение:JDEE не может найти JAR-файл JDK на OS X
Не могу найти инструменты банки файл JDK (или эквивалент) .Type Mx описать-функцию [RET] jde-get-jdk-dir для получения дополнительной информации.
Я побежал /usr/libexec/java_home
, чтобы найти мой Java дом и установить это в моем ~/.bash_profile
:
export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home"
Затем я настроил JDEE, чтобы указать на JDK в ~/.emacs
:
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(jde-jdk (quote ("1.7.0_17")))
'(jde-jdk-registry (quote (("1.7.0_17" . "/Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home")))))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)
Может кто-нибудь сказать мне, почему автозаполнение не работает? Я считаю, что в настоящее время ни одна часть моей настройки JDEE i не работает, однако я использую автозавершение для тестирования, поскольку это моя основная задача, чтобы работать.
Update: Если я использую M-x jde-compile
он говорит
JDE не признает JDK 1.7 JAVAC. Предположим, JDK 1.6 javac? (Да или нет)
Кажется, что он находит мой JDK. Если я напечатаю да, это даст ту же ошибку (Cannot find JDK's tools jar file (or equivalent)
.
I подумайте, что это правильное решение. Oracle изменила структуру JDK, и я думаю, что это самый чистый способ решить эту проблему для инструментов, которые имеют допущения, основанные на предыдущем местоположении classes.jar –