Answers:
我要保守,并说没有,Emacs是不是一个下拉更换为Eclipse(尤其是不开箱)。但是,这并不意味着它不适合Java开发。
由于您已经熟悉Eclipse,因此建议您看一下eclim
:
Eclim提供了通过命令行或本地网络连接访问Eclipse代码编辑功能(代码完成,搜索,代码验证等)的功能,从而可以将这些功能与您喜欢的编辑器集成在一起。
Eclim 支持Maven。它通过名为的软件包与Emacs集成emacs-eclim
。请按照emacs-eclim
自述文件中概述的步骤进行安装1:
下载并安装 eclim。
安装
emacs-eclim
:
如果尚未将MELPA添加到
package-archives
:
(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t)
评估上面的代码(通过按C-x C-e最后一个封闭括号后的点进行按压)或重新启动Emacs。
emacs-eclim
通过安装进行安装M-xpackage-install
RETemacs-eclim
RET。将以下代码添加到您的init文件中:
(require 'eclim)
(global-eclim-mode)
1修改说明以仅包括一种安装方法。
在过去的几年中,Emacs / eclim一直是我的主要Java IDE,并且说它即使在使用大型代码库(我目前的emacs / eclim工作区中有4000多个Java文件)的情况下也能很好地运行。的确,emacs-eclim要求在调用之前保存文件eclimd
,但这对IMO来说并不是什么大问题。编辑经验仍然不错,并且调试器(使用gud
)还可以。
如果您不满意所有基于Eclipse的解决方案,建议您使用Malabar模式。我已经使用了几年(在我改用emacs-eclim之前),它具有一些不错的功能,最重要的是它可以与任何Maven项目一起使用。如果您使用Maven,malabar-mode
将立即为您提供自动完成和代码导航(以及其他功能)。通过malabar,我使用jdibug调试远程Java进程。
Emacs最早的Java软件包JDEE也可能值得一试。在这里,您会发现许多以纯elisp(或通过发行的随附Java程序bsh
)实现的IDE功能,但是上次我使用它的时间过长。我可能会弄错了,但是上一次我检查时,JDEE最适合Java <= 1.4,而使用它效果最好的调试器是jdb
(其他的速度太慢)。
最后,无论您选择哪种Java包,我都会把Projectile放在很多与项目相关的优点上。
此时(2018年),LSP Java(https://github.com/emacs-lsp/lsp-java)相当不错。几个功能:
主要卖点是,有全职开发人员在LSP Java后端https://github.com/eclipse/eclipse.jdt.ls上工作,几乎每个星期都会带来新功能。