我听说有人选择了其中一种方式,并对其中一种方式发誓。
作为一个Eclipse的忠实粉丝,但没有时间尝试IntelliJ,我很有兴趣从“前Eclipse用户”IntelliJ用户那里听到一些用IntelliJ可以做而用Eclipse不能做的具体事情。
注意:这不是一个主观的问题,也不意味着变成一场IDE圣战。请为任何煽动性的答案投票。
我听说有人选择了其中一种方式,并对其中一种方式发誓。
作为一个Eclipse的忠实粉丝,但没有时间尝试IntelliJ,我很有兴趣从“前Eclipse用户”IntelliJ用户那里听到一些用IntelliJ可以做而用Eclipse不能做的具体事情。
注意:这不是一个主观的问题,也不意味着变成一场IDE圣战。请为任何煽动性的答案投票。
当前回答
IntelliJ有一些相当高级的代码检查(与FindBugs类似但又不同)。
虽然我在使用IntelliJ时非常想念FindBugs插件(Eclipse/FindBugs集成非常酷)。
下面是IntelliJ支持的代码检查的官方列表
编辑:最后,IntelliJ有一个findbugs-plugin。它仍处于测试阶段,但代码检查和FindBugs的组合非常棒!
其他回答
可能不是能做/不能做的问题,而是如何做的问题。
例如,两者都有编辑器围绕码头面板的项目,类路径,输出,结构等。但在Idea中,当我开始输入所有这些自动折叠时让我专注于代码本身;在eclipse中,所有这些面板都保持打开,使我的编辑器区域非常小,大约是总可视区域的1/5。所以我必须抓住鼠标,点击来最小化这些面板。在日食中,整天这样做是一种非常令人沮丧的经历。
The exact opposite thing happens with the view output window. In Idea running a program brings the output window/panel to see the output of the program even if it was perviously minimized. In eclipse I have to grab my mouse again and look for the output tab and click it to view my program output, because the output window/panel is just another one, like all the rest of the windows, but in Idea it is treated in a special way: "If the user want to run his program, is very likely he wants to see the output of that program!" It seems so natural when I write it, but eclipse fails in this basic user interface concept.
可能在eclipse中有一个快捷方式(编辑时自动隐藏输出窗口,运行程序时自动显示),但由于其他几十个功能,快捷方式必须在论坛,在线帮助等中寻找,而在Idea中则更“自然”一些。
这可以重复几乎所有的功能,自动完成,自动换行,快速文档查看,一切。我认为在Idea中的用户体验要比在eclipse中的用户体验愉快得多。那么,“快乐地发展”这句格言就成为现实了。
Eclipse可以处理更快的大型项目(+300个jar和+4000个类),我认为IntelliJ Idea 8正在处理这个问题。
当然,所有这些都是主观的。我们如何衡量用户体验?
我认为您可以坚持使用这两个ide中的任何一个。 不要“担心在您没有使用的IDE中错过一个巨大的好处”的最好迹象是我们在Eclipse爱好者和IntelliJ爱好者之间看到的很长的争论。这是一个很好的迹象,双方拥有几乎相同的力量,这使得这场长期的讨论得以幸存。
回答的序言:我对Eclipse的使用是有限的。我们需要一个Java IDE在Windows和Mac上都能运行,而Mac的移植速度越来越慢。这是几年前的事了,我相信现在没问题了。但这正是我们转向IntelliJ的原因,我们对它很满意。
现在是我的答案:我还没有看到提到的一个很大的区别是,IntelliJ/Jet Brains的技术支持更好。我们向JetBrains发送电子邮件,并在不到一个小时内得到明确的答复。寻找Eclipse问题的答案通常会得到“你这个愚蠢的白痴”的答案(通常是一小部分回答),同时还有大量有见解的、有帮助的回答。但要得到真正的答案还需要一些梳理。
Intellij有一个比subversion或Subclipse优秀得多的SVN插件,而且它是有效的!我们在使用Eclipse合并源文件上所浪费的时间是无法想象的。对于IntelliJ,这不是一个问题,因为插件可以帮助你更多。
此外,Subclipse插件也不可靠——我们经常遇到插件认为其他开发人员没有将任何代码签入SVN的情况,但确实存在——CI服务器已经处理了它们!
一个非常有用的特性是能够部分构建Maven反应堆项目,以便只包括您需要的部分。
To make this a little clearer, consider the case of a collection of WAR files with a lot of common resources (e.g. JavaScript, Spring config files etc) being shared between them using the overlay technique. If you are working on some web page (running in Jetty) and want to change some of the overlay code that is held in a separate module then you'd normally expect to have to stop Jetty, run the Maven build, start Jetty again and continue. This is the case with Eclipse and just about every other IDE I've worked with. Not so in IntelliJ. Using the project settings you can define which facet of which module you would like to be included in a background build. Consequently you end up with a process that appears seamless. You make a change to pretty much any code in the project and instantly it is available after you refresh the browser.
非常简洁,而且非常快。
我无法想象在没有它的情况下,在像YUI这样的东西中编写一个返回到DWR/SpringMVC的前端。