365

我从那些改变了任何一种方式并且对其中一种发誓的人那里听说过。

作为一个巨大的 Eclipse 粉丝,但还没有时间尝试 IntelliJ,我很想听听“前 Eclipsians”的 IntelliJ 用户的一些具体事情,这些事情你可以用 IntelliJ 做而你不能用 Eclipse 做。

注意:这不是一个主观问题,也根本不是要变成 IDE 圣战。请对任何火焰诱饵答案投反对票

4

41 回答 41

185

CTRL-单击可在任何地方使用

CTRL-click 将您带到定义单击对象的位置 - 不仅在 Java 代码中的 Java 类和变量中,而且在 Spring 配置中(您可以单击类名、属性或 bean 名),在 Hibernate 中(您可以单击属性名称或类,或包含的资源),您可以一键从 Java 类导航到它用作 Spring 或 Hibernate bean 的位置;单击包含的 JSP 或 JSTL 标记也有效,按住 ctrl-单击 JavaScript 变量或函数会将您带到定义它的位置,如果有多个位置,则显示菜单,包括其他 .js 文件和 HTML 或 JSP 中的 JS 代码文件。

多种语言的自动完成

休眠

在 HSQL 表达式中自动完成,在 Hibernate 配置中(包括类、属性和 DB 列名),在 Spring 配置中

<property name="propName" ref="<hit CTRL-SPACE>"

它将向您显示可以注入该属性的那些 bean 的列表。

爪哇

Java 代码中非常智能的自动完成功能:

interface Person {
    String getName();
    String getAddress();
    int getAge();
}
//---
Person p;
String name = p.<CTRL-SHIFT-SPACE>

它只向您显示getName()getAddress()toString()(仅它们在类型上兼容),并且getName()在列表中排在第一位,因为它具有更相关的名称。仍在 EAP 中的最新版本 8 具有更智能的自动完成功能。

interface Country{
}
interface Address {
    String getStreetAddress();
    String getZipCode();
    Country getCountry();
}
interface Person {
    String getName();
    Address getAddress();
    int getAge();
}
//--- 
Person p;
Country c = p.<CTRL-SHIFT-SPACE>

它会默默地自动完成它

Country c = p.getAddress().getCountry();

Javascript

JavaScript 中的智能自动完成功能。

function Person(name,address) {
    this.getName = function() { return name };
    this.getAddress = function() { return address };
}

Person.prototype.hello = function() {
    return "I'm " + this.getName() + " from " + this.get<CTRL-SPACE>;
}

并且它只显示getName()getAddress(),无论您在项目中的其他 JS 对象中使用的 get* 方法如何,并且 ctrl-click on this.getName()会将您带到定义这个的位置,即使您的项目中还有其他一些getName()函数。

HTML

我是否提到了文件路径中的自动完成和 ctrl 单击,例如 <script src=""、<img src="" 等?

HTML 标记属性中的自动完成功能。HTML 标记的样式属性中的自动完成,包括属性名称和值。类属性中的自动完成也是如此。
键入 <div class="<CTRL-SPACE>,它将显示项目中定义的 CSS 类的列表。选择一个,按住 ctrl 单击它,您将被重定向到定义它的位置。

简单的母语突出显示

最新版本具有语言注入功能,因此您可以声明您的自定义 JSTL 标记通常包含 JavaScript,并且它会突出显示其中的 JavaScript。

<ui:obfuscateJavaScript>function something(){...}</ui:obfuscateJavaScript>

跨所有项目的索引搜索。

您可以使用任何 Java 类或方法的 Find Usages,它会找到它的使用位置,不仅包括 Java 类,还包括 Hibernate、Spring、JSP 和其他地方。重命名方法重构不仅在 Java 类中重命名方法,而且在包括注释在内的任何地方重命名方法(不能确定注释中的字符串是否真的是方法名称,所以它会询问)。即使有另一个同名的类的方法,它也只会找到你的方法。良好的源代码控制集成(SVN 是否支持更改列表?IDEA 支持它们用于每个源代码控制),能够使用您的更改创建补丁,这样您就可以将更改发送给其他团队成员而无需提交它们。

改进的调试器

当我在调试器的监视窗口中查看HashMap时,我看到了逻辑视图 - 键和值,上次我在 Eclipse 中这样做时,它显示了带有哈希和下一个字段的条目 - 我并不是真的在调试HashMap,我只是想看看它的内容。

Spring & Hibernate 配置验证

它在您编辑时验证 Spring 和 Hibernate 配置,因此我无需重新启动服务器即可知道我拼错了类名,或者添加了构造函数参数,因此我的 Spring cfg 无效。

上次尝试时,我无法在 Windows XP x64 上运行 Eclipse。

它会建议你person.nameperson.address。按住 Ctrl 键单击person.name,它将导航到Person类的getName()方法。

在此处键入Pattern.compile("");put \\,按 CTRL-SPACE 并查看有关您可以在正则表达式中放入什么内容的有用提示。您还可以在此处使用语言注入 - 定义您自己的采用字符串参数的方法,在 IntelliLang 选项对话框中声明您的参数是正则表达式 - 它也会在那里为您提供自动完成功能。不用说它突出了不正确的正则表达式。

其他特性

我不确定Eclipse中是否存在一些功能。但至少我们团队中使用 Eclipse 的每个成员也使用一些合并工具将本地更改与源代码控制中的更改合并,通常是 WinMerge。我从不需要它——合并 IDEA 对我来说就足够了。单击 3 次,我可以在源代码管理中查看文件版本列表,再单击 3 次,我可以比较以前的版本,或者以前和当前的版本,并可能合并。

它允许指定我需要WEB-INF\lib文件夹内的所有 .jar,而无需单独选择每个文件,因此当有人将新的 .jar 提交到该文件夹​​时,它会自动将其拾取。

上面提到的可能是它所做工作的 10%。我不使用 Maven、Flex、Swing、EJB 和许多其他东西,所以我不知道它对它们有什么帮助。但确实如此。

于 2008-10-27T20:00:16.220 回答
81

我使用 intellij 而不是 eclipse 只有一个原因:可用性

无论是调试、重构、自动完成.. Intellij 更容易使用一致的键绑定、可用的选项等。在功能方面,intellij 很难赶上 Eclipse,因为后者具有比 intellij 更多的可用插件,并且易于扩展。

于 2009-02-07T05:21:48.773 回答
54

可能不是什么可以/不能做什么的问题,而是如何

例如,两者都有编辑器,周围有项目、类路径、输出、结构等的停靠面板。但是在 Idea 中,当我开始键入所有这些时,自动折叠让我专注于它自己的代码;在 Eclipse 中,所有这些面板都保持打开状态,使我的编辑器区域非常小,大约是总可视区域的 1/5。所以我必须抓住鼠标并单击以在这些面板中最小化。整天这样做是 eclipse 中非常令人沮丧的经历。

视图输出窗口会发生完全相反的情况。在 Idea 中,运行程序会带来输出窗口/面板以查看程序的输出,即使它以前被最小化。在eclipse中我必须再次抓住我的鼠标并寻找输出选项卡并单击它来查看我的程序输出,因为输出窗口/面板只是另一个,就像所有其他窗口一样,但在Idea中它被处理一种特殊的方式:“如果用户想运行他的程序,很可能他想看到那个程序的输出!” 当我写它的时候它看起来很自然,但是 eclipse 在这个基本的用户界面概念上失败了。

可能在 Eclipse 中有一个快捷方式(编辑时自动隐藏输出窗口并在运行程序时自动显示它),但作为其他几十个功能,必须在论坛、在线帮助等中寻找快捷方式,而在 Idea 中则更多”自然”。

这可以重复几乎所有的功能,自动完成,自动换行,快速文档视图,一切。我认为在 Idea 中的用户体验比在 eclipse 中要愉快得多。然后座右铭成真“快乐发展”

Eclipse 可以处理更快的大型项目(+300 个 jar 和 +4000 个类),我认为 IntelliJ Idea 8 正在解决这个问题。

这一切当然是主观的。我们如何衡量用户体验?

于 2008-10-27T20:25:47.137 回答
44

Idea 8.0 具有可爱的ctrl+shift+spacex 2,它执行以下自动完成功能:

 City city = customer.<ctrl-shift-space twice>

解决为

 City city = customer.getAddress().getCity();

通过任意数量的 getter/setter 级别。

于 2009-01-20T13:20:53.293 回答
33

不要忘记“与剪贴板比较”。

我在 IntelliJ 中一直使用的东西,在 Eclipse 中没有等价物。

于 2008-11-24T05:18:58.863 回答
31

我在 IntelliJ 中最喜欢的快捷方式在 Eclipse 中没有(我发现)被称为“转到符号”。 CTRL-ALT-SHIFT-N允许您从整个项目中开始输入和查找类、方法名、变量名等。

于 2009-05-20T01:43:19.210 回答
27

由于新的 Android Studio,我尝试切换到 IntelliJ。但我现在非常失望。我正在使用带有Code Recommanders插件的 Eclipse。这是一个为什么 Eclipse 如此出色的简单示例:

我想创建一个新的SimpleTimeZone. SimpleTimeZone没有零参数的构造函数。

Ctrl + Space在日食中

在此处输入图像描述

Ctrl + Space在 IntelliJ 中

在此处输入图像描述

在 IntelliJ 中,我没有得到任何构造函数类型的信息SimpleTimeZone

EnterEclipse之后

在此处输入图像描述

我得到了先前选择的构造函数,其中填充了预定义的变量名称。我可以看到每个参数的类型。使用 Code Recommanders,Eclipse 通过当前范围内先前定义的变量类型猜测正确的构造函数,并用这些 var 填充构造函数。

EnterIntelliJ 之后没有任何反应。我得到一个空的构造函数。我必须按下Ctrl + P才能看到预期的论点。

在此处输入图像描述

于 2013-05-18T12:19:17.700 回答
25

如果您将光标放在方法上,CTRL+SHIFT+I则将弹出方法实现。如果该方法是一个interface方法,那么您可以使用向上和向下箭头在实现中循环:

Map<String, Integer> m = ...
m.contains|Key("Wibble");

地点 | 是(例如)您的光标所在的位置。

于 2008-10-27T21:47:19.530 回答
24

IntelliJ 有一些非常高级的代码检查(与 FindBugs 类似但不同)。

虽然我在使用 IntelliJ 时严重错过了 FindBugs 插件(Eclipse/FindBugs 集成非常酷)。

是 IntelliJ 支持的 CodeInspection 的官方列表

编辑:最后,IntelliJ 有一个findbugs-plugin。它仍然是一个测试版,但代码检查和 FindBugs 的结合真是太棒了!

于 2008-10-27T12:58:46.853 回答
16

远,远,更多的重构。

于 2009-02-11T15:44:19.360 回答
15

我经常使用的一件事是设置断点,然后控制它的作用。(在我上一份工作中,其他大多数人都使用 Eclipse……我记得很惊讶没有人能在 Eclipse 中找到如何做到这一点。)

例如,可以让断点实际上不停止,而只是将消息记录到控制台。这意味着,我不必在代码中乱扔“System.out.println(...)”然后重新编译。

于 2008-11-11T22:11:47.990 回答
15

想法以更简单的方式解决了许多问题,或者没有等价物:

  • 自动完成操作:ctrl+shift+a您是否可以从键盘调用任何想法操作而无需记住其组合键...想想 Windows 中的 gnome-do 或 launchy,您就有了想法!此外,此功能支持 CamelCasing 缩写;)

  • Shelf:让您可以轻松地将一些代码分开,然后通过差异查看器查看它们。

  • 本地历史:管理得更好,更简单。

  • SVN 注释和历史记录:更易于检查,并且您可以轻松地查看整个源文件的这一部分的历史记录。

  • 随处自动完成,例如评估表达式和断点条件窗口。

  • Maven 集成……简单得多,而且集成得很好。

  • 重构更接近手,例如循环插入、包装/转换、重命名和添加变量。

  • 发现功能强大且组织良好。即使在大项目中

  • 同时与大型项目的多个分支一起工作非常稳定(作为分支源的 1.5Gb 前错误修复程序,并且需要同时在它们中工作,idea 显示了其坚如磐石的能力)

  • 更简洁的界面...

  • 而且,仅使用键盘更简单,无需使用鼠标进行许多简单的任务,节省您的时间并让您更加专注于代码......这很重要!

而现在,开源...... Idea 用户群将成倍增长。

于 2010-05-31T16:07:50.530 回答
14

结构搜索和替换。

例如,搜索类似的内容:

  System.out.println($string$ + $expr$);

其中 $string$ 是文字,$expr$ 是 my.package.and.Class 类型的表达式,然后替换为:

  $expr$.inspect($string$);
于 2008-10-27T20:59:23.387 回答
13

就这个线程而言,我的时间可能有点偏离,但我不得不做出回应。

我是 Eclipse 的忠实粉丝——自从它第一次出现就开始使用它。一位朋友当时(10 多年前)告诉我,这将是一名球员。他是对的。

然而!我刚刚开始使用 IntelliJ,如果您还没有看到或使用过更改列表,那么您就错过了编程天堂。

跟踪我更改的文件的能力(在我的开发分支 ala clearcase 上)是我在 eclipse 插件中寻找的东西。Intellij 跟踪一次提交的所有更改,非常容易。您可以使用自定义列表隔离更改的文件。我将它用于必须在本地唯一的配置文件,但在我同步或与存储库进行比较时会不断被标记——将它们列在更改列表下,我可以监控它们,但巧妙地将它们藏起来,这样我就可以专注于真正的添加我正在做。

此外,还有一个提交日志插件,可以为那些未与您的错误跟踪软件集成的 SCCS 输出所有更改的文本。将日志粘贴到工单的工作历史记录中会捕获文件、它们的版本、日期/时间和分支/标签。真是太酷了。

我敢打赌,所有这些都可以通过 eclipse 中的插件(或未来的增强功能)来支持;然而,Intellij 让这一切变得轻而易举。

最后,我对这个产品的主流喜爱感到非常兴奋——按键,所以它很痛苦,但很有趣。

于 2010-09-06T23:36:09.227 回答
12

IntelliJ 调试器有一个非常方便的功能,叫做“评估表达式”,它比 eclipses 挂件要好得多。它具有完整的代码完成功能,我认为它通常“更有用”。

于 2008-10-27T12:56:11.380 回答
11

好吧,对我来说,这是一千件小事。一些宏,Eclipse 中的一般 GUI 布局,我觉得很糟糕。我无法在 Eclipse 的不同窗口中打开多个项目。我可以打开多个项目,但是当我切换文件时,基于视图的系统会在我周围交换一堆东西。IntelliJ 的代码检查似乎更好。它用于解决常见问题的弹出助手非常好。很多简单的可用性信息,比如我可以将鼠标悬停在热点上的侧边栏,它会告诉我方法的每个实现子类或我正在实现的方法以及从哪里实现。

每当我不得不使用或观看某人使用 Eclipse 时,似乎他们可以完成我在 IntelliJ 中可以做的大部分事情,但它们需要的时间更长,而且更笨重。

于 2008-10-27T18:31:43.637 回答
9

引入变量。(Ctrl+Alt+V在 Windows 上,Cmd+Alt+V在 OSX 上)

假设您调用了一个方法,service.listAllPersons() Hit Ctrl+Alt+Vand Enter,并且插入了方法调用返回值的变量:

List<Person> list = service.listAllPersons();

节省您的输入,并且您不必检查您正在调用的方法的返回类型。在使用泛型时特别有用,例如

new ArrayList<String>()

[引入变量]

ArrayList<String> stringArrayList = new ArrayList<String>();

(当然,您可以在点击之前轻松更改变量的名称Enter

于 2009-07-20T22:31:31.343 回答
8

IntelliJ 具有从代码到 jspx 文档的智能感知和重构支持。

于 2008-10-27T12:45:33.087 回答
7

对我来说,这是对 IDEA 的 maven 支持,尤其是在版本 9 中是首屈一指的。项目与 maven 模型的即时同步非常棒,让开发变得愉快。

于 2010-04-29T01:16:44.693 回答
6

Intellij 的 SVN 插件比 Subversive 或 Subclipse 好得多,而且它可以工作!我们浪费在使用 Eclipse 合并源文件上的时间是不值得考虑的。这不是 IntelliJ 的问题,因为该插件可以为您提供更多帮助。

此外,Subclipse 插件也不可靠——我们经常遇到插件认为其他开发人员没有将任何代码签入到 SVN 的情况,但是有——CI 服务器已经处理了它们!

于 2010-02-18T14:09:14.763 回答
4

VIM模拟器。这个插件在 IDEA 中编辑文件时提供了几乎完整的 vi/vim/gvim 仿真。支持以下功能:

  • 动作键
  • 删除/更改
  • 插入模式命令
  • 分数
  • 寄存器
  • VIM 撤消/重做
  • 可视模式命令
  • 一些 Ex 命令
  • 一些 :set 选项
  • 用于搜索和搜索/替换的完整 VIM 正则表达式
  • 图表
  • 命令行历史
  • 搜索历史记录
  • 跳转列表
  • VIM 帮助

来自http://plugins.jetbrains.net/plugin/?id=164关于这个插件的一些评论

由于这个插件,我看不到任何其他 ide ......两全其美......太棒了!这就是我在所有 IDE 中所缺乏的。
于 2010-06-18T12:06:10.173 回答
4

我认为的优点之一是依赖结构矩阵: http: //www.jetbrains.com/idea/features/dependency_analysis.html#link0

Lattix 的网站(独立产品)中很好地介绍了 DSM 的使用和好处: http ://www.lattix.com/files/dl/slides/s.php?directory=4tour

于 2011-02-10T15:34:37.930 回答
3

其他几件事:

  • 更改方法签名时传播参数/异常,对于更新调用堆栈深处的方法非常方便
  • 作为参数传递给 jdbc 调用的字符串中的 SQL 代码验证(以及整个新捆绑的语言注入内容)
  • 在接口和类(及其方法)和智能实现导航(Ctrl+Alt+Click 或 Ctrl+Alt+B)的图标中实现/覆盖
  • EJB 2.1 接口和 bean 类之间的链接(包括重构支持);旧的,但在处理旧项目时仍然非常有价值
于 2008-12-23T16:49:59.313 回答
2

IntelliJ 所做的 Eclipse 没有做的两件事对我来说非常有价值:

方法分隔符:方法之间那些模糊的灰线使代码更具可读性

文本抗锯齿:让代码在 IDE 中看起来很漂亮

于 2008-10-29T02:44:56.950 回答
2

一个非常有用的功能是能够部分构建 Maven 反应器项目,以便只包含您需要的部分。

为了更清楚一点,考虑使用覆盖技术在它们之间共享许多公共资源(例如 JavaScript、Spring 配置文件等)的 WAR 文件集合的情况. 如果您正在处理某个网页(在 Jetty 中运行)并且想要更改一些保存在单独模块中的覆盖代码,那么您通常希望必须停止 Jetty,运行 Maven 构建,再次启动 Jetty 并继续。Eclipse 和我使用过的几乎所有其他 IDE 都是这种情况。在 IntelliJ 中并非如此。使用项目设置,您可以定义您希望将哪个模块的哪个方面包含在后台构建中。因此,您最终会得到一个看起来无缝的过程。您对项目中的几乎所有代码进行了更改,并且在刷新浏览器后立即可用。

非常整洁,而且非常快。

我无法想象在没有它的情况下用 YUI 支持 DWR/SpringMVC 来编写前端。

于 2008-11-05T11:20:43.407 回答
2

我在 IntelliJ 中一直使用的东西是在我输入时进行重构。我使用两个 IDE 从打印输出(最初用 eclipse 编写)重写了类,并且在 IntelliJ 中编写相同的类比使用 eclipse 少了大约 40% 的击键/鼠标点击。

在 Eclipse 支持使用不完整的代码进行尽可能多的重构之前,我不想使用它。

这是 IntelliJ 8.0/8.1 [ http://www.jetbrains.com/idea/features/index.html]中更长的功能列表

于 2009-02-07T09:31:11.233 回答
2

我的回答的序言:我对 Eclipse 的使用是有限的。我们需要一个 Java IDE 来同时在 Windows 和 Mac 上工作,而 Mac 端口的速度一天比一天慢。这是几年前的事了,我相信现在可以了。但这就是让我们改用 IntelliJ 的原因,我们对此很满意。

现在我的答案是:我还没有看到提到的一大区别是 IntelliJ/Jet Brains 的技术支持更好。我们向 JetBrains 发送了一封电子邮件,并在不到一个小时内得到了明确的答复。寻找 Eclipse 问题的答案通常会得到“你这个笨蛋”的答案(通常是少数回复)以及大量有见地、有用的回复。但是需要一些整理才能得到真正的答案。

于 2009-02-23T16:08:55.087 回答
2

数据流分析:过程间逆向流分析和前向流分析,如此所述。我的经验基于社区版,它可以很好地进行数据流分析。在代码非常复杂的少数情况下,它会失败(拒绝做任何事情)。

于 2010-06-13T23:34:49.700 回答
2

IntelliJ 比 Eclipse 做得更好的一件事就是掏空你的口袋!

但是我确实更喜欢使用它,它与 Eclipce 相比的一大优势是它与文件系统同步的方式,适用于大型项目和慢速计算机(是的,在工作环境中,PC 比我们家里的慢得多)Eclipse 似乎尽管初始索引时间较慢,但 IntelliJ 似乎更快。

IntelliJ 社区版显然可以免费使用它,但您很快就会想要那些未包含在 CC 版中的额外重构和漂亮的小东西。

在我看来,它通常是一种更好的用户体验,但它是否物有所值是每个开发人员自己回答的问题。

但是让我们庆幸的是,我们现在拥有多达三个出色的 Java IDE,而 NetBeans 一直在变得更好。

于 2010-10-28T10:01:51.543 回答
2

首先我喜欢intellij。它至少有 100 个 Eclipse 缺少的功能。我说的是在重构、重命名、移动和已经提到的其他方面,可靠性和智能性要好得多。

但是,intellij 不允许 eclipse 做的一件事。它不允许在同一个虚拟机下同时运行多个项目。

当你有前端,中间,核心,代理等单独的项目时,它们都必须相互交互,你不能同时快速修改和调试,afaik。我目前解决这个问题的唯一方法是使用 ant 脚本来部署和更新依赖项目中的 jar,或者使用 maven。

Eclipse 允许在一个 ide vm 实例下调试多个项目。

于 2011-11-16T18:36:33.823 回答
1

我最近发现 IntelliJ IDEA 比 Eclipse 至少有两个优势。

如果尝试在 JSP 代码编辑器中使用代码格式化,那么 JSP 脚本就会损坏。Eclipse 变得有点疯狂,它到处广告随机的代码片段。IDEA 表现得非常好。

另一件事是在 JBoss 服务器上部署应用程序的速度。IntelliJ 正在替换 JBoss 的 tmp 文件夹中的应用程序,因此重新部署非常快。Eclipse WTP 正在替换部署文件夹中的应用程序,事实证明,部署文件夹的持续时间要长得多。

于 2009-11-19T21:08:55.873 回答
1

目前,它是唯一可以将选项卡撕成另一个窗口的窗口。当您有更多屏幕时很方便。

于 2011-05-25T23:43:14.787 回答
0

我不记得在 Eclipse 中是否可以使用 word/line/method/class 换行

在 Intellij Idea 中,您使用Ctrl+W

于 2008-12-17T02:52:03.460 回答
0

从 Maven POM 打开一个项目。只需选择“打开项目...”导航到您的顶级 pom.xml 并按 Enter 键:) NetBeans 现在也具有此功能。

于 2009-07-20T22:49:21.463 回答
0

抱歉,如果这已经涵盖了,但只需在“更改”选项卡那里我可以看到我的本地更改、传入的更改、远程更改只是我不能没有的东西。在 Eclipse 中,我找不到这样的一个特征!

此外,像中间单击这样绑定到“打开声明”的简单操作是一个很棒的 UI 附加功能——我也看不到在 Eclipse 中实现的功能。

我的工作场所只有 Eclipse,但我正在认真考虑购买个人 Idea 许可证......

于 2011-09-07T17:54:42.413 回答
0

在 IntelliJ 中,可以跳过使用“最后编辑位置”编辑的最后地点的历史记录。Eclipse 具有类似的功能,但 Eclipse 仅返回到一级编辑位置。

拥有历史记录而不是 Eclipse 提供的一个级别是一个很好的生产力特性:它充当自动书签的一种形式,因为您经常想跳回到您一直在进行更改的地方。我每天多次使用这个能力,当我被要求使用 Eclipse 做某事时,我会感到没有它的痛苦。

于 2012-01-22T04:55:34.060 回答
0

两者有许多不同的功能和工作流程,这在所有答案中都很明显。但是,我认为在决定使用哪种框架时,还要考虑使用每种工具可以提高总体生产力。

我是 Netbeans 和 Eclipse 的忠实粉丝,并且已经使用了很多年。它们是出色的工具,根据您的工作,您可能需要选择其中一种。

然而,大约六个月前,在处理一个复杂的 Java Web 项目时,该项目涉及大量用于 HMT5 ui 的 javascript 前端代码,由于 js 自动完成错误,我被迫寻找 Eclipse 的替代品。我非常绝望,以至于我正在考虑为我的 js 代码返回一个简单的文本编辑器!!!

我只是碰巧遇到了 Intellij Idea(不幸的是,没有时间研究工具)。

虽然需要一些时间来适应 Idea 的做事方式,但撇开特殊功能不谈,在我看来,它通过左右小事提供的生产力提高是最大的资产。它对我来说效果更好,我现在是 Idea Ultimate 的付费订阅客户。一旦你习惯了这一点,就很难再回到其他任何事情上。

没有什么比免费更好的了,我是开源的忠实粉丝,但最后,如果你以此为生,那么每次都能更快地做事。

于 2014-02-26T09:43:36.870 回答
0

我认为您可以坚持使用这些 IDE 中的任何一个。最好不要“担心在你不使用的 IDE 中错过巨大的好处”的最好迹象是我们在 Eclipse 粉丝和 IntelliJ 粉丝之间看到的很长的争论。这是一个好兆头,双方拥有几乎相同的力量,导致这场长期讨论得以幸存。

于 2014-04-02T12:49:58.343 回答
-1

我没有用 IntellijIdea 编写过很多代码,但是在 IntellijIdea 中,您可以看到括号之间的代码块(if、try/catch、cycle 等)从哪里开始以及在哪里结束。

在 Eclipse(我在 Eclipse 3.2 中编写代码)中,您只能手动识别该块。

于 2009-02-23T15:56:10.093 回答
-1

Alt+Insert在列模式下编辑文本。

于 2011-02-10T20:31:00.257 回答
-2

显示导航栏 ALT-Home。

于 2008-10-29T19:07:37.370 回答