Подтвердить что ты не робот

Emacs java-mode: malabar, jdee или eclim?

Я хочу использовать emacs для java-кодирования, но я смущен тому, какой режим использовать для java-кодирования. Там jdee, который кажется идеоподобным; малабар, который, как говорят, более хорошо разбирается в конструкциях java 1.5, чем jdee; и emacs-eclim, который является бэкэндом eclipse для emacs. Существует также множество расширений для расширения для emacs, и я также путаю, с какой из них можно использовать. На самом деле, я настолько смущен, что я отложил использование любого из них, пока не получаю рекомендации.

Каков наилучший вариант для java-mode + завершения в emacs? И, если когда-либо я решаю использовать комбинацию того, что я упоминал выше, будут ли конфликты случаться?

4b9b3361

Ответ 1

Для тех, кто используется для управления текстовыми манипуляциями Emacs, Eclipse может показаться педалей на велосипеде с одной ногой. Плагин Emacs + от http://www.mulgasoft.com/ отлично подходит для привязки ключей Emacs к Eclipse.

Я использую как Eclipse, так и Emacs много, но если бы я только разрабатывал Java, я мог бы использовать только Eclipse с Emacs+. Требуется некоторая работа, чтобы включить много функций Eclipse в Emacs.

Мой совет - использовать Emacs >= 23. Если вы находитесь на Mac, посмотрите AquaMacs. Я использую JDEE в качестве плагина Java. Это имеет серьезный недостаток в том, что вы не играете хорошо с дженериками. Это не то, что он перестает работать, это просто то, что многие вещи не распознаются. Не используйте старый плагин 2.3.5 JDEE (который поставляется с большинством дистрибутивов Linux), но получите версию 2.4 с сайта sourceforge. Также получите Emacs Code Browser (ECB); это плагин, который даст вам такие вещи, как Eclipse Project Explorer и Outline views (другие разработчики будут смотреть на это и не верят вам, когда скажу им, что это Emacs). Я использовал эту настройку для коммерческих проектов в Windows, Mac и Linux в прошлом году.

Фактически, Eclipse очень хорошо играет с Emacs, и я часто переключаюсь между ними. В Eclipse есть несколько хороших инструментов рефакторинга, которые я использовал для использования sed, и он имеет хороший интерфейс отладчика. Вы можете использовать их одновременно. Я нахожу, что я использую Eclipse при работе с кодом других людей и Emacs, когда я пишу свой собственный код. Emacs работает намного быстрее. Обратите внимание, что для меня значительная ценность Emacs - это не-Java-функции, такие как редактирование файлов конфигурации Tomcat на удаленных серверах из моего локального Emacs, запись профессиональных документов с помощью LaTeX, разработка в Python или Bash или MATLAB или XML, и задачу выполнения нечетных текстовых манипуляций (например, преобразование CVS файлов в массивы String []).

Я не использовал два других проекта, которые вы упомянули. Возможно использовать компилятор Eclipse с Emacs уже, так что я не уверен, что вижу точку проекта emacs-eclim, которая, похоже, все еще обезврежена. Проект Malabar может быть интересным, но, похоже, он является продуктом одного немного расшатанного разработчика (например, предупреждение ", если вы не используете Maven (почему?), Вы не следует рассматривать малабар-режим" --- Я скажу моим клиентам, что?).

Java на Emacs находится в печальном состоянии. Я хочу, чтобы JDEE был обновлен, но неясно, когда или если это произойдет. Веб-сайт и список рассылки предлагают несколько подсказок.

Ответ 2

Я использую emacs-eclim с поддержкой автоматического полного режима и подсветкой java-режима исключительно для программирования на Java. 90% моей работы выполняется в emacs, но я переключаюсь на затмение, когда мне нужно отлаживать, запускать модульные тесты или выполнять крупные рефакторинги. В целом, эта настройка работает очень хорошо для меня.

Я не пробовал JDEE в течение многих лет, но я помню, что это была настройка b * tch. Я не очень интересовался пользовательским интерфейсом, поскольку он размещал много заранее подготовленных окон, которые были заблокированы на месте. Мне нравится переключаться между буферами редактирования, часто отображая только одно окно, но раскалываясь и переставляя "на лету", когда это становится необходимым.

Примечание. Я являюсь помощником emacs-eclim, и это, вероятно, расценило мое мнение.

Ответ 3

Если вы используете Maven, я бы рекомендовал режим малабара. Он автоматически установит все для вас, не нужно редактировать файлы проектов, как это было бы с JDEE. Недостаток, который я обнаружил с помощью малабара, заключается в том, что он может потреблять много памяти, если у вас есть много проектов многоуровневого модуля.

Как Malabar, так и JDEE предоставят вам "истинное" завершение, т.е. возможны только доработки. Однако в Emacs есть две удивительные "интеллектуальные рамки завершения угадывания". hippie-expand и автозаполнение.

Первое замечательно (может для вас заполнить целые кодовые блоки, что позволяет, например, циклически проверять все if-тесты в ваших проектах), но auto -полный режим еще лучше. Это даст вам приятное меню стиля смыслового стиля, будет "учиться" по мере его использования и позволит вам определить файл с пополнениями, которые вы хотели бы получить на разных языках.