Eclipse/MyEclipse转英特尔liJ IDEA完全攻略

工作流支持

协同编辑

协同编辑是问题跟踪器中投票最高的请求,目前 JetBrains
也在跟进这一功能。在目前采用的方法中,将有一个主 IDE
在运行源代码的计算机上运行,​​其他用户能够将其 IDE
作为“瘦客户机”连接到主
IDE,而无需直接进行源代码访问。每个连接的用户都将具有自己的状态,包括打开文件集与插入号位置等,并且可以根据需要选择“跟随”另一个用户。

瘦客户机用户将有权访问核心 IDE
功能,例如导航、补全和调试,但不能访问完整的功能集,例如,在初始版本中,瘦客户端可能无法执行版本控制操作。

协同编辑支持基于 Rider 协议,因此很可能首先在
Rider 中发布,然后扩展到其它 IDE。不过这是一项长期工作,IntelliJ IDEA
2020.1 版本中暂时还是看不是相关成果的。

支持云执行

相当长一段时间以来,许多 JetBrains
产品都支持在容器内运行和调试代码,但是,在不同产品中这些功能的实现之间并没有太多相关性,甚至基本功能(如
Docker 支持)的 UI 也不一致。

现在 JetBrains
引入了目标环境的概念,该概念提供了一种可双向复制文件并在目标环境中启动进程的方法。在
IntelliJ IDEA 2020.1 中,受支持的环境将包括本地计算机、Docker 容器和通过
ssh 连接的计算机。

在后续发行版中,计划统一支持围绕新架构的现有 Docker
和远程解释器。除此之外,还将提供更深入的云集成。

重新设计项目模型

项目模型是 IDE
表示项目结构的方式:哪些文件属于该项目、它们如何相互依赖、使用哪些库……项目模型有一定的局限性,首先,它不支持任意混合不同类型的项目。例如,AppCode
可以打开 Xcode 项目,Rider 可以打开 Visual Studio
解决方案,但是无法在同一 IDE 框架中打开 Gradle 项目和 Xcode
项目。其次,项目模型在目录级别上工作,而不在文件级别上,并且它不能表示同一目录中具有不同依赖项的不同文件,这使得很难将诸如
Bazel 之类的构建系统集成到 IDE 中,同时也给其它场景带来了问题。

重新设计的项目模型(内部称为“工作区模型”)将消除这些限制。同时它还带来了其它好处,例如在项目打开期间提高性能、与
Maven 和 Gradle 进行更顺畅的同步以及更好的编程模型。

JetBrains 还表示接下来将发布更多计划信息,详情查看:

https://blog.jetbrains.com/idea/2019/12/intellij-platform-roadmap-for-2020

支持 Go Modules

计划以几种不同的方式改进对 Go Modules 的支持:

1.GO-7632 — 支持来自 Go
1.13 的GOSUMDBGOPRIVATE环境变量。

2.GoLand 2020.1
将在升级依赖项的主要版本后对导入进行重命名。这项对于“重命名”的重构将帮助用户在 go.mod 文件中从 “module
name” 重命名变为 “module name/v2”,并相应地更新项目中的所有导入路径。

3.支持通过 Find Usages 搜索依赖项的引用。

4.对于 replace 语句计划添加以下内容:

  • 提交之前,有关 go.mode 文件中的本地路径替换的通知
  • 代码完成,可以在 替换为本地依赖项 和通过从 VCS
    克隆进行替换 之间进行选择。
  • 如果要从 VCS 克隆,则 IDE 将显示一个对话框,建议输入远程 URL
    和目标本地路径。克隆完成后,GoLand
    将生成一个适当的“替换”指令,并将克隆的模块附加到项目。

图片 1

配置

  • 安装完成后运行IntelliJ
    IDEA,首先会让我们选择配置文件路径和UI样式,根据自己的喜好选择或者使用默认配置即可。

  • 然后到达定制插件页面,在这我会选择先把所有的插件关闭掉,然后再根据自己的需要打开,一方面可以提升流畅度,另一方面也可以减少用不到的东西的干扰。你可以在此根据自己用到的技术选择开启的插件。强烈建议打开插件Database Tools and SQL

    图片 2

  • 当我们来到这个界面是,就可以开始创建项目了,但我们得先进行一些进一步的设置

    图片 3

  • 点击下方的Configure=>Settings进入设置页面

    • 勾选并修改UI字体为Microsoft YaHei UI
    ![](https://upload-images.jianshu.io/upload_images/5432447-c5a7e55e2cb02dc3.png)

-   取消勾选启动时打开上次的项目,如果这个被选上时,切换项目将会变得非常麻烦,所以我们把他取消掉

    ![](https://upload-images.jianshu.io/upload_images/5432447-a2f5eb57b4118d3d.png)

-   取消代码补全的大小写敏感,在这改为None,不再需要刻意注意大小写



    ![](https://upload-images.jianshu.io/upload_images/5432447-aa32ff2a475f403c.png)

-   修改默认编码为UTF-8



    ![](https://upload-images.jianshu.io/upload_images/5432447-8661af7d4dd4aff1.png)

-   修改编辑器字体,并将中文字体改为微软雅黑,默认字体在Windows中的显示非常的糟糕,必改。Consolas字体和1.3的行距是我多次尝试后得出的最佳配置。



    ![](https://upload-images.jianshu.io/upload_images/5432447-6f3b2c52f9200546.png)

图片 4

代码辅助功能

为了帮助开发者更快地编写代码,开发团队将专注于改机代码编辑功能,这些功能几乎不需要用户交互。

  • 扩展 基本代码完成 和 智能代码完成 功能
  • 新的 quick-fixes 和 Intention actions
  • 新的 Postfix 模板 和 Live 模板
  • 生成构造器(Generate
    Constructor)的应用领域将扩展到超出结构类型的限制
  • 针对 代码格式化 的各种改进
  • Rename, Extract  和 Implement
    Interface 的重构将尽可能完善,以提供预期的行为
  • 没有任何第三方插件。

Eclipse/MyEclipse转IntelliJ IDEA完全攻略

[TOC]

图片 5

图片 6

性能

索引性能

与 IDE
性能有关的两个主要痛点是启动性能,索引耗时较长的工具被认为是重量级的。JetBrains
表示,明年关注点将转向索引性能方面。

针对此问题官方采取了多管齐下的方法。首先,支持使用预建的索引块,这样每个用户
IntelliJ
实例都不必执行索引java.lang.String类的工作。计划明年逐步提供支持,从
JDK 开始,然后涵盖 Maven Central 的库以及其它 IDE
中的解释器和包。同时还在研究支持团队或企业内项目源代码的索引块共享的方法,虽然这一块目前还没有任何具体计划。

其次,计划通过在索引时提供更多的 IDE 操作来减少索引的破坏性。

第三,将检测并通知用户有关索引异常的信息,包括索引花费时间太长的文件、索引重新建立频率太高的文件以及异常导致的索引重建,目的是提供解决这些问题并提高
IDE 在项目上的性能的清晰步骤。

同时也计划支持进行旧性能优化,以确保索引系统不会执行任何不必要的工作并且不会产生可避免的开销。

读/写锁线程模型重新设计

UI
卡死(freeze,冻结)是一个很大的问题。今年虽然已经构建了用于报告此类卡死问题的基础,并进行了架构更改以修复许多相关问题,比如文件系统事件的异步侦听器,但是接下来的一年中,计划迈出更大的一步:将需要写锁定的操作移出
UI 线程。

早在 IntelliJ IDEA
早期就做出了一项架构决定,该决定要求大多数操作需要修改 IDE
的内部数据结构才能在 UI
线程上运行,也就是包括基本操作(将字符插入文档中)和大规模操作(重新命名具有数千种用法的方法)。这种架构的好处是简单的编程模型,但是明显的缺点是
UI 响应能力在许多情况下都会受到影响。

多年以来,官方一直在寻找方法来解决此架构的局限性,主要是将大型操作拆分为在后台运行并应用于
UI 线程的部分。一个更基本的解决方案是完全摆脱 UI
线程的要求,但是直到最近,还不知道如何在不对自己的代码和第三方插件进行重大重写的情况下做到这一点。

不过现在,JetBrains
已经有了一个允许逐步迁移的架构解决方案,并且正在开始实施。明年将重构
IntelliJ 平台的基本 UI 组件和
API,以采用新的线程模型。一旦新模型稳定并且可以看到改进,将在所有 IDE
中切换到新模型,从而使 UI 平滑且没有滞后。

无需重启即可加载和卸载插件

该特性已经在 IntelliJ IDEA 2019.3
中预览,它使开发者不用重新启动就可以安装主题和键盘映射插件,无缝升级。2020.1
版本中会将此支持扩展到所有类型的插件。计划将为大部分捆绑的插件提供支持,并且会为第三方插件开发人员提供支持说明。

这项工作更有意义的地方在于,它的最终目标是 IDE
可以根据开发者打开的每个项目的大小自行调整大小,比如仅针对使用 Spring
的项目加载 Spring 插件,仅针对 Angular 项目加载 Angular
插件。这样如果不使用某项技术,那么就不会看到与此相关的任何 UI
元素,也不会看到支持该技术的插件对性能或内存使用量产生任何影响。

速度更快

和构建 GoLand 的 IntelliJ 平台一样,此 IDE
将不断提高启动性能和索引速度。以下是即将执行的计划的简短摘要:

  • 在我们的项目仍在建立索引时解锁更多 IDE
    操作,以便可以立即执行它们,而无需完成索引的构建
  • IDE
    会向用户通知有关索引出现异常的信息。例如,索引花费时间太长的文件、索引重新建立频率太高的文件以及异常导致的索引重建

有关更多详细信息,请阅读 IntelliJ 平台 2020 年路线图。

提取并转换React组件使用新的Extract
Component重构来创建新的React组件,方法是从现有的渲染方法中提取JSX代码。您还可以通过使用新意图将React类组件转换为功能组件,反之亦然。

基本技巧

  • Ctrl+Alt+L可以格式化代码

  • Ctrl+Alt+O可以清除不必要的import

  • Ctrl+Alt+T可以选择将代码用if,for,try-catch等包围

  • 在项目内,点击左下角的正方形调出侧边菜单,然后点击左上的Project菜单打开项目文件夹,第一次打开项目时会建立索引,右下角可以看到索引进度,这时候系统CPU占用会很高,先等待索引完成再进行操作

![](https://upload-images.jianshu.io/upload_images/5432447-16764c69b69c6881.png)
  • 在IDEA的代码提示中,补全不需要按顺序输入,比如导入LocalDateTime。

    图片 7

![](https://upload-images.jianshu.io/upload_images/5432447-fa3a3ba76cfc7a1b.png)
  • 后缀补全,在变量后面输入.sout即可用System.out.println()将其包含起来,输入5.fori将提示转换成for (int i = 0; i < 5; i++) {},输入psmv将可以转换成main函数,还有其他的可以参考Setting内的下图位置。

    图片 8

  • 万能快捷键Alt+Enter,可以创建测试类,提供错误解决办法,转换为其他形式等,甚至可以将for操作转换成stream操作。有空按一按,绝对有惊喜。

![](https://upload-images.jianshu.io/upload_images/5432447-8e26562afdb13e78.png)



![](https://upload-images.jianshu.io/upload_images/5432447-1474e058062a7b10.png)



![](https://upload-images.jianshu.io/upload_images/5432447-0485b5e2c2b49581.png)
  • 生成快捷键Alt+Insert,可以快速的生成构造器,getter,,setter方法,equal
    和 hashCode 方法
![](https://upload-images.jianshu.io/upload_images/5432447-fb3c0c9b8075ca48.png)
  • Database插件

    • 添加数据库时填写好各项连接信息,并点击下面的Download下载驱动,选择我们需要的Schemas
    ![](https://upload-images.jianshu.io/upload_images/5432447-7cb9fa4e4537e9a6.png)



    ![](https://upload-images.jianshu.io/upload_images/5432447-b32ff396b97b4bdf.png)



    ![](https://upload-images.jianshu.io/upload_images/5432447-51fe77c014faca11.png)

-   这时候我们就可以点击右边第一个按钮写SQL语句了,SQL当然也有代码补全了



    ![](https://upload-images.jianshu.io/upload_images/5432447-b6aa03352323f7f9.png)

-   这时候你的String里写SQL也支持代码补全了,从此不需要其他数据库工具



    ![](https://upload-images.jianshu.io/upload_images/5432447-340c6825a5fd3d0b.png)

JetBrains 发文介绍了其 IntelliJ 平台 2020 年的路线图。

无需重启即可加载和卸载插件

在 2019.3
中,我们无需重启就可以安装和卸载任何主题和键盘映射插件,以实现无缝升级。2020.1
版本中会将此支持扩展到所有类型的插件。计划将为大部分捆绑的插件提供支持,并且会为第三方插件开发人员提供支持说明。

这项工作更有意义的地方在于,它的最终目标是 IDE
可以根据开发者打开的每个项目的大小自行调整大小,比如仅针对使用 Spring
的项目加载 Spring 插件,仅针对 Angular 项目加载 Angular
插件。这样如果不使用某项技术,那么就不会看到与此相关的任何 UI
元素,也不会看到支持该技术的插件对性能或内存使用量产生任何影响。

图片 9

前言

Eclipse/MyEclipse曾经是Java开发的不二之选。然而随着IntelliJ
IDEA的横空出世,Eclipse/MyEclipse开始显得老旧和原始。

但由于IntelliJ
IDEA的很多用法概念与Eclipse/MyEclipse有很大的差别,使得很多多年使用Eclipse/MyEclipse的程序员难以适应。

所以在本文我将详细的说明从Eclipse/MyEclipse迁移至IntelliJ
IDEA需要了解的各个方面的内容和疑难杂症以及使用技巧,让大家可以从容迁移,跟IntelliJ
IDEA谈笑风生。

文章主要介绍了当前 JetBrains 在改进 IntelliJ IDEA 和基于 IntelliJ 平台的
IDE
方面所做的一些工作,主要包括性能和对现代开发工作流的支持两个方面。改进结果将会在明年发布,其中一些会发布在春季的 2020.1
版本中。

GoLand 开发团队公布了 2020 年首个主要版本 GoLand 2020.1
的路线图,介绍了在改进性能、支持 Go
Modules、以及代码辅助功能方面将会开始的一些计划。

改进了类型注释和模式匹配的自动完成功能现在,Scala插件为带有继承者,Java
Enums和Scala
Enumerations的密封类型生成了详尽的匹配。在模式匹配完成中,Scala插件为适用的类和接口建议了一个类型模式列表,而使用TAB的自动完成更新了名称和类型。

常见问题

  • Eclipse的左边栏为一个Workspace,可以放置多个项目,多个项目在一个窗口运行。但在IDEA中这就是一个项目,如果你需要建立其他项目,请点击File=>new=>Project,不同的项目在不同的窗口中运行绝不要在当前项目目录再放入其他项目!!!

  • 不同于Eclipse将Jar包放入目录即可使用,在Idea中还得将其配置到项目Library内

    图片 10

  • 不建议修改默认的快捷键为Eclipse的形式,毕竟IDEA已经未来的主流,以后每次用都改一遍不如花一段时间适应IDEA的快捷键,可以去Setting查看更多的快捷键用法

    图片 11

如果有问题或觉得有需要补充或修改的可以在下面回复,点个赞支持下呗

流畅的 UI

开发团队计划从当前的架构解决方案开始迁移,因为此架构要求大多数操作需要修改
IDE 的内部数据结构才能在 UI
线程上运行,其中包括基本操作(将字符插入文档中)和大规模操作(重新命名具有数千种用法的方法)。这种架构的好处是简单的编程模型,但明显的缺点是
UI 响应能力在许多情况下都会受到影响。

为此,GoLand 的上游项目 IntelliJ 将重构 IntelliJ 平台的基本 UI 组件和
API,以采用新的线程模型,从而为用户打造一个流畅且无延迟的 UI。

图片 12

安装

  • 首先我们第一步当然是安装IntelliJ
    IDEA了,访问所属公司JetBrains的官网。

图片 13

  • 在IDE第一就能看到我们的主角IntelliJ
    IDEA,但我们并不是要直接下载IntelliJ IDEA。而是下载下面的Toolbox
    App。IntelliJ IDEA更新迭代的很快,Toolbox
    App是JetBrains家族的IDE的综合管理平台,可以让我们一键下载和升级IDE,免除后面繁琐的维护和升级操作。

    图片 14

在这我们能看到IDEA有两个版本,一个是免费的Community社区版,一个是收费的Ultimate旗舰版。社区版的功能相比旗舰版是弱很多的,在这我们选择Ultimate版本进行安装。点击Install耐心等待到完成即可。

支持云执行

在之前的版本中,GoLand
已支持在非本地计算机或容器内运行和调试代码。但在不同环境中这些功能的实现往往有所出入。

GoLand 2020.1
引入了目标环境的概念,该概念提供了一种可双向复制文件并在目标环境中启动进程的方法。在
2020.1 中,受支持的环境将包括本地计算机、Docker 容器和通过 ssh
连接的计算机。

在后续发行版中,计划统一支持围绕新架构的现有 Docker
和远程解释器。除此之外,还将提供更深入的云集成。因此,如果需要在云的新
VM 上运行该进程,无需指定要连接的特定计算机的详细信息。

详情请查看:

(文/开源中国)    

IDE配置使用IntelliJ IDEA 2018.2,您可以直接从“
查找操作”对话框为操作指定快捷方式。只需选择所需操作,按Alt +
Enter,然后输入快捷方式。

9.科特林捆绑的Kotlin插件已更新至Kotlin 1.2.51

IntelliJ IDEA 2018 mac版最新功能

图片 15

VCS日志选项卡中的增强功能您现在可以从“
日志”选项卡的上下文菜单中删除提交中的Git标记。此外,Diff预览面板现在可在VCS日志中使用。此外,您可以根据需要打开任意数量的日志选项卡。

为重新分配的局部变量和重新分配的参数加下划线IntelliJ
IDEA现在默认为重新分配的局部变量和重新分配的参数加下划线。支持此功能的所有语言的属性(现在包括Java和Groovy)可以在Preferences
/ Settings中更改 编辑| 配色方案| 语言默认值| 标识符| 重新分配。

图片 16

图片 17

图片 18

新的断点意图对于调试Java项目,IntelliJ IDEA
2018.2包含几个新的便捷断点意图操作。无需再手动设置特定断点的属性 –
只需按Alt + Enter键,IDE将为您提供新的断点意图以及所有其他可用的意图。

图片 19

图片 20

图片 21

3.版本控制

4.深入了解您的代码IntelliJ
IDEA分析您的代码,在所有项目文件和语言中查找符号之间的连接。使用这些信息,它提供了深入的编码协助,快速导航,聪明的错误分析,当然还有重构。

15.数据库工具

6.内置开发人员工具为了简化工作流程,IntelliJ
IDEA从第一次开始就提供了无与伦比的工具集:反编译器,字节码查看器,FTP等等。

Branch过滤器中最喜欢的分支我们已将“收藏”分支添加到“ 日志”选项卡中的“
分支”过滤器,因此您现在可以快速过滤您喜欢的分支的提交。

图片 22

10.斯卡拉

图片 23

图片 24

Scalafmt作为内置格式化程序的替代品Scalafmt格式化器,其用于将是一个独立的插件,是现在的Scala插件的一部分。它可以在Preferences
/ Settings |中配置 编辑| 代码风格| 斯卡拉。

在修订版中浏览存储库如果您使用Git进行版本控制,您现在可以根据任何给定的修订来探索存储库的状态。在“修订”操作中使用新的“
浏览存储库”(可从VCS日志的上下文菜单或文件历史记录中获取),以在“
项目工具”窗口中打开所需的存储库状态。

图片 25

新的JavaScript和TypeScript意图当你按下Alt +
Enter键的新JavaScript和打字稿意图地段现已:实现接口,创建派生类,
实现一个接口或抽象类的成员,生成的“开关”的情况下,并用“for..of”迭代。

图片 26

检测重复即时查找重复的代码片段。即使你只想提取一个变量,常量或方法,IntelliJ
IDEA也会让你知道,有一个类似的代码片段可以随着你正在使用的代码片段一起被替换。

图片 27

多个github帐户使用IntelliJ IDEA
2018.2,您可以根据需要配置任意数量的github帐户(在“首选项”|“版本控制”|“github”中),并为每个项目设置默认的
github帐户。

不显眼的情报IntelliJ
IDEA中的编码协助不仅仅是编辑器:它帮助您在处理其他部分时保持高效:例如填充一个字段,搜索元素列表;
访问工具窗口; 或切换设置等。

框架特定的援助虽然IntelliJ
IDEA的是Java的IDE,它也理解,并提供即使在语言表达被注入到在字符串中为种类繁多的其他语言,如SQL,JPQL,HTML,JavaScript等,智能编码协助您Java代码。

跨语言重构了解符号用法的所有内容,IntelliJ
IDEA提供了非常有效,彻底的重构。例如,当您在JPA语句中重命名类时,它会将所有内容更新到使用它的每个JPA表达式。

1.深度智能IntelliJ
IDEA将您的源代码编入索引之后,它通过在各种环境中提供相关建议,提供快速和智能的体验:即时和聪明的代码完成,即时代码分析和可靠的重构工具。

IntelliJ IDEA CommUnity
Edition考虑到每个用户都有不同的工作流程,并且可以定制其接口和活动插件以适应每个开发人员的需求。您可以在浅色或深色的用户界面主题和两个预设的键盘映射之间进行选择,也可以禁用任何不需要的工具来完成项目。

图片 28

图片 29

Runnable Kotlin临时文件现在您可以运行Kotlin
Script临时文件并在编辑器中查看结果。此外,Kotlin
Script临时文件可以使用项目代码中的声明。此外,您现在可以直接从“
项目”视图创建新的Kotlin Script临时文件。

图片 30

11.JavaScript和TypeScript

配置快速文档以与自动完成一起弹出现在可以将快速文档配置为与自动完成一起弹出。只需启用“
首选项/设置” 中的“ 显示文档弹出窗口…”选项 编辑| 一般|
代码完成。以前,可以将文档弹出窗口配置为仅显式调用完成时显示。

图片 31

图片 32

图片 33

将调用链合并到kotlinx.coroutines.experimental.withContextIDE检测到紧跟着await调用的冗余异步调用,并建议将调用链合并到kotlinx.coroutines.experimental.withContext的两个新意图:-
async {}.await()到withContext(DefaultDispatcher)。- async{
}.await()到withContext { }。

IntelliJ IDEA ce 2018镜像包下载完成后,打开镜像包,将左侧的【IntelliJ
IDEA CE】拖到右边的应用程序中进行安装即可。

链完成比Smart
Completion深入一点,并在当前上下文中列出可通过方法或获取者访问的适用符号。假设你正在寻找价值Project
并且只有Module
module声明。按^⇧Space两次获得module.getProject()无需任何额外的努力。

发表评论

电子邮件地址不会被公开。 必填项已用*标注