Ich mache noch einen weiteren Versuch, auf Emacs umzusteigen. Ich bin ein anständiger Vi-Benutzer, benutze aber Eclipse für die meisten meiner Entwicklungsarbeiten in den letzten 10+ Jahren (ist es so lange her).
Also habe ich ein bisschen nachgelesen und gedacht, dass JDEE der richtige Weg ist - ich habe es konfiguriert, habe aber noch einige grundlegende Fragen.
Aber nach einigen Nachforschungen scheint JDEE nicht gut gewartet zu sein und ich brauche vielleicht nur CEDET?
Also frage:
- Kann Emacs als Eclipse-Ersatz dienen? Ich organisiere meinen Build mit Maven?
- Wenn "1" ist, mit welcher Tool-Suite soll ich dann beginnen: CEDET? JDEE?
Vielen Dank.
Antworten:
Ich werde konservativ sein und nein sagen , Emacs ist kein direkter Ersatz für Eclipse (besonders nicht sofort ). Dies bedeutet jedoch nicht, dass es nicht für die Java-Entwicklung geeignet ist.
Da Sie bereits mit Eclipse vertraut sind, empfehle ich Ihnen einen Blick auf
eclim
:Eclim unterstützt Maven . Die Integration mit Emacs erfolgt über ein Paket namens
emacs-eclim
. Befolgen Sie die Schritte in deremacs-eclim
README-Datei , um es zu installieren 1 :1 Anweisungen geändert, um nur eine einzige Installationsmethode zu enthalten.
quelle
Emacs / eclim war in den letzten Jahren meine primäre Java-IDE und funktioniert auch mit großen Codebasen einwandfrei (mein aktueller emacs / eclim-Arbeitsbereich enthält mehr als 4000 Java-Dateien). Emacs-eclim erfordert zwar, dass die Datei gespeichert wird, bevor sie aufgerufen wird
eclimd
, aber es ist kein so großes Problem, IMO. Die Bearbeitungserfahrung ist immer noch gut und der Debugger (mitgud
) ist in Ordnung.Wenn Sie alle auf Eclipse basierenden Lösungen erneut senden, würde ich den Malabar-Modus empfehlen . Ich habe das auch ein paar Jahre lang benutzt (bevor ich zu emacs-eclim gewechselt bin) und es hat einige nette Funktionen, von denen die Tatsache ist, dass es bei jedem Maven-Projekt sofort funktioniert. Wenn Sie Maven verwenden, erhalten Sie
malabar-mode
sofort automatische Vervollständigung und Code-Navigation (unter anderem). Mit malabar habe ich jdibug zum Debuggen von Remote-Java-Prozessen verwendet.Das älteste Java-Paket für Emacs, JDEE , ist möglicherweise ebenfalls einen Besuch wert. Hier finden Sie viele IDE-Funktionen, die in pure elisp implementiert sind (oder begleitende Java-Programme, die über gestartet wurden
bsh
), aber das letzte Mal, als ich es verwendet habe, war es ziemlich veraltet. Ich kann mich irren, aber als ich das letzte Mal nachgesehen habe, war JDEE am besten für Java <= 1.4 geeignet und der Debugger, der am besten damit funktionierte, warjdb
(die anderen waren zu langsam).Unabhängig davon, für welches Java-Paket Sie sich entscheiden, würde ich Projectile auch für viele projektbezogene Vorteile einsetzen.
quelle
Zu diesem Zeitpunkt (2018) ist LSP Java ( https://github.com/emacs-lsp/lsp-java ) ziemlich gut. Einige der Features:
Das Hauptverkaufsargument ist, dass es Vollzeitentwickler gibt, die an dem LSP-Java-Backend https://github.com/eclipse/eclipse.jdt.ls arbeiten, das fast jede Woche neue Funktionen hervorbringt.
quelle