Eclipse是最好的Java集成开发环境吗?

84

Eclipse是最好的Java 集成开发环境 吗?

如果不是,是否有更好的选择?

我想知道并可能尝试一下。 谢谢。


9
答案是肯定的,就这样。 - Aaron
65
我个人无法忍受 Eclipse。它运行缓慢,而且调试起来非常不方便。 - Trap
9
Eclipse 是开发 Eclipse RCP 应用程序的最佳 IDE。 但考虑到您需要获取任何操作所需的插件数量,它几乎不是一个“最佳的即开即用的IDE”。也许公正地说,它是针对Java最具自定义性的IDE。 - James Schek
15
依我的看法,IntelliJ 更好。我使用过这两个编辑器,IntelliJ 的图形用户界面更加精细。 - quant_dev
8
Eclipse 太容易出现故障了,不建议使用,建议使用一些已被证明可靠的工具。 - cmcginty
显示剩余4条评论
22个回答

74

首先,我要说Eclipse是一个非常棒的Java和其他语言的IDE。它的插件架构和可扩展性很难与之匹敌,而且它免费这一点对于小团队或紧张预算来说是一个巨大的优势。

以下是我所讨厌Eclipse的几个问题:

  • 文档真的很缺乏。我不知道谁写这些东西,但如果它们不仅仅是缺失,那就是不完整的。如果不是不完整,那就是直接错误的。我曾经浪费很多宝贵的时间,通过阅读Eclipse的文档来尝试使用某个功能,只发现一切都是垃圾。
  • 尽管这是一个庞大的项目,但我发现社区非常缺乏或者足够混乱,很难参与其中。我曾经试图多次获取有关特定主题或插件的帮助,结果被送到3或4个不同的新闻组,他们都指向另一个新闻组,或者根本不回复。这可能非常令人沮丧,因为我使用的许多较小的开源产品在回答我提出的问题方面非常好。也许这只是社区规模的一个问题。
  • 如果您需要超出其发行版捆绑功能(例如Java EE开发人员专用版,其中包含类似WTP之类的东西)的功能,我发现额外插件的安装过程非常痛苦。我不知道为什么他们不能使这个过程更简单(或许我只是在家里的Mac上被宠坏了,不知道在“真实”的世界中有多么糟糕),但如果我不成功,往往需要花费数小时的时间来安装新的插件。据说这是他们3.4版本的目标之一(使新项目的安装更简单),但如果他们成功了,我无法判断。
  • 缺乏以书籍和实际教程形式呈现的文档。我需要一个能够深入浅出地讲解Eclipse这个功能丰富而复杂的IDE,介绍它的特性,并告诉我如何更有效地使用它。但迄今为止,像这样的资料根本不存在。如果您想学会使用Eclipse,唯一的选择就是坐下来玩(真正地操作它,而不仅仅是看到一个功能然后去阅读可能并不存在或错误的文档)。
  • 尽管存在上述问题,Eclipse 确实是一个很棒的 IDE。它的重构工具非常出色。Javadoc 的处理完美无缺。所有常见的 IDE 特性都在其中(代码补全、模板、与各种版本控制系统的集成、与构建系统的集成)。其代码格式化和清理工具也非常强大。我发现它的构建系统工作得很好,而且直观易用。我认为它的声誉就是建立在这些方面。

    我对其他IDE或其他版本的 Eclipse 没有足够的经验(我在工作中多次使用RAD;我简直不敢相信有人会为那付费),因此无法对它们发表评论,但总体来说,我对 Eclipse 很满意。我听过的一个建议是,如果您想要不带太多麻烦的 Eclipse,可以选择一个付费版本。我在网络上看到很多人推荐的MyEclipse就是一个非常好的选择,而且价格真的非常实惠(据我所知,只需支付50美元即可获得该版本和一年免费升级服务)。如果您预算充足并需要额外的功能,请考虑购买这样的版本。

    总之,我尽力详细地描述了我的经验和看法。希望对您有所帮助,祝您好运!:)


    80
    自由对许多人来说是一个非常重要的因素。例如,Eclipse非常适合学生使用。 - Liam
    3
    3.4版本中引入了"dropins"文件夹,使得插件的安装变得更加便捷,无需通过更新站点进行安装。 - MetroidFan2002
    1
    我认为你对文档有点苛刻了。就我个人而言,我发现维基和Eclipse Corner中的文档非常有用,此外http://help.eclipse.org/galileo/index.jsp提供了大量信息和教程。我从未遇到过“错误的文档”,实际上这些文档只是过时了。 - NomeN
    2
    现在IntelliJ也是免费的,至少在某种程度上是这样! - fastcodejava
    文档的质量差异很大。在某些领域,它是优秀的,但在许多其他领域,它只是糟糕或缺失。 - JesperE
    显示剩余4条评论

    69

    IntelliJ IDEA很不错。现在它只比Eclipse好一点点。从我的经验来看,你可以在IDEA中编码比在Eclipse中快几倍(我从Eclipse的早期采用者转到了IDEA,并没有回头看)但是IDEA有一些缺陷:

    • 完整版本不免费。
    • 它占用内存较多。
    • 项目管理不够出色。
    • Jetbrains不断推出微小的增强功能并称之为主要发布版本。现在,IDEA比几年前慢且容易出错。而且你需要付费才能使用!(IDEA现在拥有免费的Community Edition)

    尽管如此,我仍然不会回去使用Eclipse。IDEA中的代码重构和意图太好了。

    Eclipse的一个重要版本已经发布了一段时间,花了我大约一个小时在网站上搜索才找到实际包含在该版本中的内容,这可能会说服我回到Eclipse阵营。请访问JetBrains网站,看看如何销售一个IDE!


    2
    我对IDEA的看法是它非常慢。我广泛使用Netbeans,并发现IDEA更慢。我使用的是Netbeans 6.7,尝试了IDEA 9 beta版。 - sivabudh
    13
    “不免费”并不是缺点 - 软件的价格不应该用来描述其优缺点。 - Josh Brown
    38
    @Josh - 为什么不呢?对于很多个人和公司来说,它不免费是一个致命问题。当然,自从我写这篇文章以来,IntelliJ已经发布了免费的Community Edition版本。 - oxbow_lakes
    3
    也许你现在应该更新这个答案,因为IntelliJ现在有一个免费版本了? - configurator
    社区版是免费的,并提供了我所需的几乎所有功能。唯一无法免费获得的是JavaScript编辑器。 - Fred Haslam
    显示剩余5条评论

    33

    没有最好的IDE。你使用得越熟练,它就越好用。


    4
    我在一定程度上同意这个观点......你可以习惯使用 vi 并声称它是最好的。 - Charbel
    4
    那是因为vi是最好的。 - lmat - Reinstate Monica
    @Ken 我在 .NET 和 Java 中都使用它。不过我不使用 ctags,所以它不是我在查看大型项目时的唯一选择。但我始终是一个 intellisense 的粉丝!但是当我写小项目时,完全使用 vim。 - lmat - Reinstate Monica
    @LimitedAtonement Ctrl + H(查找和替换)。或者你的意思是说你必须让它们继续计数? - MasterMastic
    @Ken 他们必须不断地计数!在vim中使用CTRL+A。http://vim.wikia.com/wiki/Increasing_or_decreasing_numbers - lmat - Reinstate Monica
    显示剩余8条评论

    26

    在我看来,Eclipse不能称之为一个IDE。好吧,我知道这有点夸张了。但这只是反映了我对Eclipse的强烈痛苦!无论你做什么,它都不起作用!你总是需要与它斗争,让它按照正确的方式工作。而在此期间,你并没有开发代码,这才是你应该做的事情,对吧?Eclipse和maven集成:不可靠!Eclipse和ivy集成:不可靠!WTP:错误、错误、错误!Eclipse和wstl验证:错误!它会突然抱怨找不到URL,即使它们确实存在,在几天后,没有任何更改,它突然就能找到等等。我可以写一本关于这个的书。回答你的问题:不,Eclipse甚至不能接近最好的IDE!IntelliJ被认为要好得多!


    14
    这句话是一句精华:“Eclipse 不是一个 IDE”。 - Arjun J Rao
    5
    Eclipse很复杂,但我个人在使用它进行Java开发时从未遇到问题。 - Roman Plášil
    1
    Eclipse跟踪它自己的工作区,但并不考虑可能导致该工作区改变的所有情况。如果您正在使用源代码控制,并且工作区在Eclipse的操作下发生了变化,它将非常难以恢复,我注意到这个问题在Mavenized项目中会更加复杂。就像Eclipse认为所有东西都需要直接集成才能正常工作一样。 - Kenogu Labz

    18

    Eclipse是第一个让我放弃XEmacs的IDE。然而,当我的雇主提供要购买Intellij IDEA许可证时,只用了三天评估版就说服我去尝试它。

    看起来有许多小细节更加令人愉悦。


    13

    IntelliJ是一个不错的IDE,但它不是免费的!如果你想要一款免费的IDE,那么NetBeans也是一个不错的选择。另外,如果你使用IBM套件,WSAD也是一款不错的IDE。


    10
    抱歉,但 IBM 的 WSAD 和 RAD 是有害的,它们把一些好的东西(Eclipse)变得不好(缓慢、臃肿、崩溃、脆弱)。 - David Waters
    4
    如果有人喜欢自虐,那么WSAD和WS是完美组合。本应只需几秒钟的事情现在却需要花费数分钟或更长时间。 - mP.
    4
    可能是常识,但以防万一,现在有一个社区版(免费、开源)的IntelliJ:http://www.jetbrains.com/idea/free_java_ide.html - GreenMatt

    12

    我必须投票支持Netbeans目前是最好的一个。Eclipse还不错,但现在Netbeans更好。


    9
    我使用IntelliJ近5年(从v1.5到v7),大约8个月前我迁移到IBM RAD(它是建立在旧版eclipse平台上的),大约3个月前我定居在Eclipse(Ganymede)。

    我在中等规模项目(有10k类)中使用了IntelliJ,而在只有几百个类的项目中则使用Eclipse。

    我发现这两个IDE(IntelliJ和Eclipse)都很好。IBM RAD只是浪费钱(当然,如果你只能选择IBM店铺,那就没有选择了)。

    与Eclipse相比,IntelliJ具有更优秀的重构功能和大多数功能的键盘快捷方式。它支持从Eclipse导入项目。它具有更好的内置xml处理功能(与Java代码几乎一样适用于重构)。内置的IntelliSense也非常好。

    Eclipse是一个很棒的免费工具。从IntelliJ转换到Eclipse花费了我大约1-2个月的时间(需要学习新的快捷键),但是我掌握了Eclipse后,一切都很顺利。我没有在中等规模项目中使用过Eclipse。

    IntelliJ和Eclipse都有活跃的插件社区,并且都能很好地与版本控制系统、单元测试框架、应用服务器和分析工具集成。

    从v4.0开始,IntelliJ变得越来越慢且臃肿。它在中等规模项目中运行缓慢。除非其性能可以提高,否则我不会使用IntelliJ。

    我没有将这两个IDE用于除Java开发之外的任何事情。

    如果你是Java开发人员,并且你的公司为IntelliJ付费,而你的项目不太大,请选择它。否则,不要绝望:Eclipse永远存在。


    8
    我在新工作中使用 Eclipse 了三个月,但后来发现正常的 Maven 项目也可以在 IntelliJ IDEA 中运行(当然,除非它是 Eclipse 插件/EMF 或其他东西 ;-))。三个月不足以与使用 IDEA 八年多进行比较,但足以说明我已经尝试过了。我决定接受它的视角(其他 IDE 不需要),它的调试器很差(除非你单击它们,否则不显示日期值!等等),它的完成能力相对于 IDEA 而言差一些。
    现在,所有这些年之后,IDEA 也是免费的(社区版),我使用它没有太多问题。当然,我会想念一些付费版“Ultimate”功能,但它比 Eclipse 好得多。最大的区别是这两个 IDE 所需的整个思维方式。但是,如果你掌握了任何一个的思维方式,我就无法理解有人为什么还要使用 Eclipse - 除非你需要它的插件生态系统或者你在那里有重大投资。
    “思维方式”差异的例子:你必须在 Eclipse 中保存,而不是在 IDEA 中保存,我不关心什么更好或更坏-但是你必须在 Eclipse 中保存,让它清理不再是错误的下划线错误等等。;-) 你必须在那里保存,以便消除其他文件中的错误,否则其他文件将看不到更改。
    我在博客中详细介绍了这个话题-是的,我是有偏见的,尽管我尽可能少表现。但经过一段时间后,这根本不可能:-) 而且,即使 IDEA 不完美,我也知道它。 因为我经常使用它。 但对于我来说,它是最好的 Java IDE。 即使是社区版。

    7
    [这不是一个真正的答案,只是一个轶事。我曾经和一些使用大量宏和彩色编码的emacs高手一起工作。太疯狂了!既然有这么多好的IDE可以用,为什么要这样做呢?]
    如果你熟练掌握emacs,你可以比使用IDE快100倍。而且它可以处理很多不同的语言,所以如果需要在另一种语言中编写代码,你不需要更改编程环境。它适用于所有操作系统,你可以自定义/添加任何你想要的东西。甚至可以通过ssh编辑全球范围内的文件(无需下载或上传)。在称他们疯狂之前,你必须先使用它。我相信他们也会因为你使用IDE而称你疯狂 :)。

    10
    我认为有充分的理由可以说Emacs实际上是一款集成开发环境。 - nevster
    作为从Eclipse转换到Emacs的工具... Emacs比大多数人想象的要强大得多。IDE提供了许多令人惊叹的功能,但是Emacs可以做很多IDE无法做到的事情...尽管如此,我最喜欢的好处可能是通过ssh使用它。 - Mike Stone
    6
    比集成开发环境(IDE)快100倍?你真的用过Eclipse吗? - wsorenson
    4
    @wsorenson说:"我在Eclipse加载的时间内完成了一些项目。"(注:load 是加粗的,表示强调这个词需要翻译) - Draemon
    11
    我猜那些项目的利润不是很高,否则你的电脑应该可以运行Eclipse。但说真的,毫无疑问它占用了大量资源(我甚至手动删除一些我不需要的插件),但一旦你熟悉了这个应用程序,就可以获得巨大的生产力提升。 - wsorenson

    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接