Podejmuję kolejną próbę przejścia na Emacsa. Jestem przyzwoitym użytkownikiem Vi, ale korzystam z Eclipse przez większość moich prac programistycznych przez ostatnie 10 lat (tak długo).
Przeczytałem więc trochę i pomyślałem, że JDEE jest właściwą drogą - skonfiguruj go, ale wciąż mam kilka podstawowych pytań.
Ale po przeprowadzeniu dalszych badań - wydaje się, że JDEE może nie być dobrze utrzymane i być może potrzebuję tylko CEDET?
Więc pytanie:
- Czy Emacs może służyć jako mój zamiennik Eclipse? Organizuję swoją kompilację za pomocą Maven?
- Jeśli „1” to tak, od jakiego zestawu narzędzi powinienem zacząć: CEDET? JDEE?
Dzięki.
Odpowiedzi:
Będę konserwatywny i powiem nie , Emacs nie zastępuje Eclipse (zwłaszcza nie po wyjęciu z pudełka). Nie oznacza to jednak, że nie nadaje się do programowania Java.
Ponieważ znasz już Eclipse, proponuję spojrzeć na
eclim
:Eclim wspiera Maven . Integruje się z Emacsem za pośrednictwem pakietu o nazwie
emacs-eclim
. Wykonaj kroki opisane wemacs-eclim
README, aby zainstalować 1 :1 Instrukcje zmodyfikowane, aby obejmowały tylko jedną metodę instalacji.
źródło
Emacs / eclim był moim podstawowym środowiskiem Java IDE przez ostatnie kilka lat i powiedziałbym, że działa dobrze, nawet z dużymi bazami kodu (mój obecny obszar roboczy emacs / eclim ma ponad 4000 plików Java). To prawda, że emacs-eclim wymaga, aby plik został zapisany przed wywołaniem
eclimd
, ale nie jest to taki duży problem IMO. Edycja jest nadal dobra, a debugger (za pomocągud
) jest w porządku.Jeśli nie podoba ci się wszystkie rozwiązania oparte na Eclipse, poleciłbym tryb Malabar . Używam tego również przez kilka lat (zanim przełączyłem się na emacs-eclim) i ma kilka fajnych funkcji, z których najważniejsze jest to, że działa od razu z każdym projektem Maven. Jeśli użyjesz Maven,
malabar-mode
natychmiast zapewni automatyczne uzupełnianie i nawigację po kodzie (między innymi). W przypadku malabara użyłem jdibug do debugowania zdalnych procesów Java.Warto również sprawdzić najstarszy pakiet Java dla Emacsa, JDEE . Tutaj znajdziesz wiele funkcji IDE zaimplementowanych w czystym elisp (lub towarzyszących programach Java uruchamianych za pośrednictwem
bsh
), ale ostatnim razem, gdy go użyłem, było dość przestarzałe. Mogę się mylić, ale kiedy ostatnio sprawdzałem, JDEE najlepiej pasowało do Javy <= 1.4, a debuger, który działał najlepiej, to byłjdb
(inne były zbyt wolne).Na koniec, niezależnie od tego, który pakiet Java wybierzesz, wrzuciłbym również Pocisk dla wielu zalet związanych z projektem.
źródło
W tym momencie (2018) LSP Java ( https://github.com/emacs-lsp/lsp-java ) jest całkiem dobra. Kilka funkcji:
Główną zaletą jest to, że są pełnoetatowi programiści pracujący nad backendem LSP Java https://github.com/eclipse/eclipse.jdt.ls, który wprowadza nowe funkcje prawie co tydzień.
źródło