IntelliJ IDEA 2019.3这回真的要飞起来了,新特性抢先看!

源:http://suo.im/5ovLVV

作者:开源中国/局长

tips:不要轻易升级idea

IntelliJ IDEA 上周才公布下一个主要版本 2019.3 的 Roadmap,近日就发布了 IntelliJ IDEA 2019.3 的首个早期访问版本(即 EAP 版本),版本号为 2019.3 EAP build 193.2956.37。

EAP 版本的下载地址为:https://www.jetbrains.com/idea/nextversion/。如果是尝鲜的话,不妨下载来体验一下,生产环境建议别轻易尝试。

继续看看新版本带来了哪些有趣的改进。

新增平滑滚动(可选项)

团队表示下一个大版本的更新重点是提升性能,也将会解决各种可用性问题。为此他们推出了平滑滚动(Smooth scrolling)功能,让用户在使用鼠标滚轮查看内容时拥有更流畅的滚动体验。

关于平滑滚动,最令人印象深刻的莫过于在微软在 Edge 浏览器上提供的平滑滚动体验,不知道 IDEA 实现的效果如何,欢迎有志之士发回使用反馈 : )

上图是官方提供的运行效果截图,可以看到,启用“Smooth scrolling”选项后,相比于启用前,后者的滚动效果更加顺滑和自然。不过录制的 GIF 不能很好体现出“平滑滚动”的效果(可访问此链接观看https://youtu.be/MoVS6HOdeew)。

意图动作(Intention action)不会从建议列表中消失

这是对现有功能的继续打磨,此次更新引入了一项更有用的改进 —— 即使我们选择了某个意图动作然后取消对话框,IDE 也会在对话框中显示意图操作。

在此前的版本中,除非我们以某种方式修改文件,否则 IDE 不会二次显示同一个意图动作。

更方便查看字段的调用树

在解决各种大小小小的故障和不一致问题的同时,此版本还新增了查看字段调用树(Field Call Hierarchy)的功能。

在 IntelliJ IDEA 中,我们可以查看所选方法的调用者和被调用者的调用树(Ctrl+Alt+H),或查看所选类的父类和子类的调用树(Ctrl+H)。但当要查看一个字段的调用树时,这将变得十分不方便。

为了理解所选字段的调用树,在此前的版本中,必须分析此字段的使用情况,并在该方法中导航至调用单个方法的调用树,这种做法十分不直观。

因此,在即将发布的 2019.3 中,直接使用 Ctrl+Alt+H 快捷键即可查看字段的调用树。

全局搜索(Find in path)显示搜索结果的文件扩展名

IntelliJ IDEA 2019.3 将继续完善“全局搜索(Find in path)”对话框功能。在此前的版本中,当我们在全局搜索中使用文件掩码(file mask)进行搜索时,搜索结果的文件扩展名会被隐藏。如果搜索结果中存在多个具有相同名称但文件扩展名不同的文件,则可能会造成混淆。

新版本修复了此问题,因此 IDE 会始终显示搜索结果的文件扩展名。

改进对 Maven 的支持

在 2019.3 版本中,IntelliJ IDEA 将能够自动配置打开、导入或创建 Maven 项目的设置,无需通过模态对话框(Modal Dialog)来手动配置设置。

此外,新版本还提升了 IDE 在编辑 POM.xml 文件时的性能,IDE 现在也已支持即时显示包含补全建议的对话框。

提升导入 Gradle 项目的性能

新版本还优化了导入 Gradle 项目的性能,以减少峰值内存消耗,这些改进对于大型项目来说意义重大。

更好地显示 GitHub PR 信息的时间轴

前段时间 IDEA 引入了对 GitHub PR 的初始支持,通过此功能我们可以查看项目所有 PR 的列表,并浏览它们的变化以及当前的状态。虽然此功能十分实用,但依然存在一些已知的限制,例如无法查看审查者提交的注释。

IntelliJ IDEA 2019.3 已将这个缺失的功能补充进来。具体来说就是,它将会在选定的 PR 中显示一个时间轴,其中包含有关 PR 的所有相关信息,例如注释、审查者和对 PR 所做的更新 —— 基本上包含需要决定是否合并此 PR 的所有信息。

只需对 PR 进行双击,IDE 将在编辑器选项卡中显示注释。

重新修改过的 Clone 对话框

此版本改进了 Clone 对话框 (VCS | Get from Version control)。现在我们可以从对话框进行登录,或者如果已经处于登录状态,IDE 将立即预览按帐户或组织分组的所有 repo 的列表。

强制从忽略列表向 VCS 添加文件

在此前的版本中,如果文件位于忽略列表,则无法将文件添加到 VCS。

IntelliJ IDEA 2019.3 对该限制进行了处理,现在即使文件位于 .gitignore(或 .hgignore)列表中,我们也可以将文件强制添加到 Git(或 Mercurial)。

JetBrains 运行时

默认情况下,IntelliJ IDEA 2019.3 将在 JetBrains Runtime 11(未经认证的 OpenJDK 11 分支)下运行。当然,JetBrains Runtime 8 也会继续提供(未经认证的 OpenJDK 8 分支)。

JBR 11(默认)已更新至 v11.0.4+12-b462.3:

  • JetBrains Runtime 基于 OpenJDK 11.0.4:JBR-1702
  • 修复在 Windows 平台上的欢迎界面:JBR-1777
  • 检测到与 OS 的键盘布局冲突:JBR-1668
  • 修复编辑器中不正确的字体(斜体):JBR-1778

JBR 8(可选)已更新至 v1.8.0_222-release-1621-b1:

  • JetBrains Runtime 基于 OpenJDK 8u222:JBR-1753
  • 修复出现在 macOS 10.15 Beta (19A501i) 上的崩溃问题:JBR-1639

最后,EAP 版本每周都会发布更新,关于本次更新的详细内容请点此查看(http://suo.im/4qm7rk)。

相关链接

  • IntelliJ IDEA 的详细介绍:https://www.oschina.net/p/intellij+idea
  • IntelliJ IDEA 的下载地址:http://suo.im/5ovR3Z

本文分享自微信公众号 - 程序员的成长之路(cxydczzl)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-09-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏姚红专栏

Centos7上部署openstack mitaka配置详解(将疑难点都进行划分)

在配置openstack项目时很多人认为到处是坑,特别是新手,一旦进坑没有人指导,身体将会感觉一次次被掏空,作为菜鸟的我也感同身受,因为已经被掏空...

12710
来自专栏小黎子数据分析

SuperSocket入门(一)-Telnet服务器和客户端请求处理

本文的控制台项目是根据SuperSocket官方Telnet示例代码进行调试的,官方示例代码:Telnet示例。

12230
来自专栏姚红专栏

SELinux深入理解

SELinux带给Linux的主要价值是:提供了一个灵活的,可配置的MAC机制。

19930
来自专栏在周末的专栏

Java内存模型

  重排序是指编译器或处理器为了提高程序性能而对指令序列进行重新排序的一种手段。重排序可以导致操作延时或程序看似乱序执行,给程序运行的结果带来一定的不确定性。

9630
来自专栏姚红专栏

Linux中rpm命令用法

10010
来自专栏姚红专栏

linux使用文本编辑器vi常用命令

ndd:n 为数字。删除光标所在的向下 n 行,例如 20dd 则是删除 20 行 (常用)

12620
来自专栏在周末的专栏

Java语法糖(二)

  内部类:顾名思义,在类的内部在定义一个类。内部类仅仅是编译时的概念,编译成字节码后,内部类会生成单独的Class文件。

8630
来自专栏授客的专栏

MyEclipse TestNG插件安装与配置

myeclipse-10.0-offline-installer-windows.exe

10220
来自专栏在周末的专栏

《Java性能权威指南》笔记----JIT编译器

编译型语言(C++,Fortran等):运行程序前,需要用编译器将代码静态编译成CPU可执行的汇编码。汇编码针对特定的CPU。

11710
来自专栏后端开发随笔

UUID在Java中的实现与应用

UUID的全称为:Universally Unique IDentifier,也被称为GUID(Globally Unique IDentifier)。是一种由...

13220

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励