Emacs和Java更改传播
你好
我经常像Eclipse这样在IDE中进行编码,但是我想尝试emacs.因为我不断听说它比像Eclipse和Visual Studio这样的大型IDE更好.
因此,我一直在研究emacs为Java提供的功能(具有JDEE扩展名),但它似乎不像Eclipse那样完整.
我在Java编辑器中寻找的最重要的事情之一是变更传播和错误通知.例如,如果我重命名一个类,则希望能够自动重命名该类的所有声明.而且,如果我删除一个方法,我希望能够看到所有在其中创建错误的地方.
我没有在emacs中找到这些东西,这对我来说是个大难题,我看不到没有这些功能我该如何处理大型项目.
所以我的问题是:那些功能不存在,或者只是我自己没有找到正确的位置?
解决方法:
Emacs可以比Eclipse更好,但是问题是“为了什么”? Emacs(和VIM)通常更小,更快并且针对文本编辑和导航进行了优化*.在最新版本中,Eclipse具有完全的编辑和导航Java代码的能力,但是具有不同的“样式”.
如果您愿意学习Emacs,请学习它.您将自己获得经验,这对于开发人员来说非常重要(您是唯一可以决定对您有用的人).但是学习Emacs并不意味着“扔掉” Eclipse,如果您使用基于ant或maven的项目构建和源代码控制系统,它们可以很好地共存.例如,您可以在Emacs中进行所有编辑,而使用Eclipse进行调试和重构.
关于Emacs和Java开发,有一些有趣的想法in this thread.也有一个interesting read以及尝试过这两种环境的人关于Emacs和Eclipse的结论.
如果您还不是Eclipse的专业用户,则应该在启动Emacs之前查看Eclipse强大的编辑和导航功能:
> 10 Eclipse navigation shortcuts every java programmer should know
> Effective Eclipse: shortcut keys
> Effective Eclipse: custom templates
> Effective Eclipse: fix it quickly
回到问题:有一个名为Xrefactory for Java的Emacs扩展,但它不支持Java 1.5功能,因此仅在使用Java 1.4或更早版本时才有用.
(*)当然,它们更多,我知道:)