拒绝Bug,Java开发利器IntelliJ IDEA最新版本2019.3重磅更新

自IntelliJ IDEA2019.2推出以来,不少用户反映这个版本Bug太多,用起来实在是不太省心。为此IntelliJ IDEA 2019.3更专注于IDE的性能和整体质量。IntelliJ IDEA团队与其他几个JetBrains开发人员团队一起集会,专门致力于完善IDE,并进行性能改进,UI响应修复,可用性增强,现有功能的改进等。

除此之外IntelliJ IDEA研发团队还正在进行一些正在进行的项目,例如对新的微服务框架的支持,例如Micronaut,Quarkus和Helidon,以及人们期待已久的对MongoDB的支持。

希望这些努力对使用IntelliJ IDEA进行开发变得更加愉快!

更好的性能

我们一直在努力提高IntelliJ IDEA的性能,并取得了以下成果:

  • 更快的IDE启动
  • 总体上更好的UI响应能力,更少的UI和编辑器冻结
  • 减少内存消耗,特别是在Gradle项目导入上
  1. 今年,我们的主要优先任务之一是增加启动时间。为了实现此目标,我们在IntelliJ平台中引入了许多重大更改,并行化了一些按顺序运行的流程,以一种使初始类加载更快的方式重组了这些类,优化了macOS上的字体加载, 以及更多。
  2. 改善UI响应能力是我们关注的另一个重要领域。我们已经努力解决了IntelliJ IDEA各个部分中发生的UI冻结问题,因为当用户界面不响应时,没人喜欢它。我们使报告UI冻结变得更加容易,并且在此发行周期中,我们一直在忙于解决收到的报告(谢谢!)。我们能够解决导致1600多份报告冻结UI的许多问题。
  3. 此外,当正则表达式模式与“查找路径”中的很长的字符串匹配或使用大量的编辑器或调试器选项卡时,IntelliJ IDEA不会冻结。现在,IDE还可以更快地渲染项目树。
  4. 还通过投入大量精力来优化Java类型推断,从而解决了其他各种编辑器冻结问题。说到Java性能的提高,长方法调用链的Java类型推断现在也可以更快地工作。我们已经加快了Java文件中代码突出显示的速度,特别是涉及带有通用var-args(Arrays.asList,Map.ofEntries等)的方法时,该方法将数十个参数传递到其中。一次为许多行调用“ 联接线”操作的性能也得到了改善。
  5. 现已将Kotlin插件v1.3.60与IntelliJ IDEA捆绑在一起,这也使Kotlin文件中的编辑器突出显示速度更快。
  6. 在版本控制子系统中进行了性能优化:我们设法优化了事件的处理和忽略文件的处理。在大型项目中,冻结更少,状态更新更快。
  7. 在Build子系统中,我们设法减少了导入大型Gradle项目时的峰值内存消耗。对于Maven项目,我们已消除了编辑pom.xml文件时的冻结问题,因此IDE现在可以立即显示完成建议。
    拒绝Bug,Java开发利器IntelliJ IDEA最新版本2019.3重磅更新
    现有功能的质量更高
  8. IntelliJ IDEA具有丰富的插件生态系统,您可以通过我们的插件存储库访问许多令人难以置信的插件。但是,过去的缺点是管理插件有点麻烦,因为每次加载和卸载插件都需要重新启动IDE。好吧,IntelliJ IDEA 2019.3通过实现核心底层基础结构-支持动态插件安装解决了此问题。基本上,这意味着IDE现在可以在不重新启动的情况下加载和卸载插件。当前已为主题和键盘映射插件启用了此功能。但是,在将来的版本中,我们计划将此扩展到大多数插件。这是使插件管理尽可能简单的第一步。
  9. 版本控制子系统中进行了很多可用性改进。为了确保清晰度,我们通过删除“将Checkout作为操作”并引入了2个新的单独操作来改进Git检出工作流程:“ Selected中的新分支”和“ Checkout”。新的“来自选定对象的新分支”操作将创建一个新分支,并且不会设置跟踪。“签出”操作会静默创建一个新的本地分支,将其签出,并在没有相同名称的本地分支的情况下设置对所选远程分支的跟踪。
  10. 为了统一从不同的VCS托管服务获取项目的UI,我们重新设计了“克隆”对话框。现在,您可以从该对话框登录,或者如果您已经登录,IDE将立即预览按帐户或组织分组的所有存储库的列表。
  11. 另外,由于现在有一种直接的方法,无需签出分支来推送它:只需在“分支”弹出窗口中找到所需的分支并将其推送即可。我们还为重命名或移动的文件在文件历史记录中添加了“文件名”列。您可能会发现有用的另一项改进是能够将文件强制添加到Git(或Mercurial)中,即使该文件位于.gitignore(或.hgignore)列表中。
  12. 我们在IntelliJ IDEA 2019.2中引入了对Java 13的基本支持,并且在此发行版中,我们显着改进了对Java13 Text Blocks的支持。我们最近发布了有关这些更改的博客文章,其中包含更多详细信息。
  13. 添加了新的“现场呼叫层次结构”操作。只需使用Ctrl + Alt + H(Windows,macOS,Linux),您就可以查看选定字段的层次结构。这使一切变得更加简单。
  14. 现在,如果启用了“在鼠标移动时显示快速文档”复选框,则将鼠标指针悬停在警告或错误上方会显示一个统一的工具提示,该提示显示警告或错误的说明以及代码参考信息。
  15. 以前,在这种情况下,IDE仅显示检查工具提示而不是文档,或者有时甚至一次显示两个弹出窗口。
  16. 意向操作对话框的默认行为已更新,如果您选择意向操作然后取消对话框,则意向操作不会从建议列表中消失。
  17. 现在,“服务”工具窗口始终显示,并且可以在其内部进行配置。除此之外,您还可以从此工具窗口中隐藏特定的运行配置。
    拒绝Bug,Java开发利器IntelliJ IDEA最新版本2019.3重磅更新
    其他有用的改进包括:
  • 重新设计了不匹配的类型工具提示,以提高其可读性。
  • 打开项目后,IntelliJ IDEA现在将显示项目名称。
  • 现在,您可以注入更多模板语言,特别是:Pug(前玉),Handlebars,EJS和Slim。
  • 现在,使用鼠标滚轮滚动更加流畅。
  • 现在,通过“首选项/设置” |“设置”中的“使用对比滚动条”复选框,可以使滚动条更加可见。Appearance & Behavior | Appearance.
    支持新的框架和技术
    1. 即使此发行版以质量为目标,但已经推出了一段时间的一些重要功能也可以使用。请注意,下面将要讨论的所有很酷的新功能仅在IntelliJ IDEA Ultimate中可用。
    2. 在我们开始为这个发布周期做准备之前很久,微服务引起了很多关注。在某个时候,我们认为我们可以使开发过程更加愉快,并增加对通常用于基于微服务的架构开发Java和Kotlin项目的框架和技术的支持。不知何故,在此版本中,星号与微服务非常吻合,我们开始着手进行集成。
    3. 首先,我们为新一代微服务框架(即Micronaut,Quarkus和Helidon)添加了丰富的编码辅助和导航。我们还想到了在Spring之上使用反应式Web服务的人员,并增加了对Spring Web Flux的支持。
    4. 通常,微服务通过HTTP / WebSocket与每个微服务进行通信,因此对我们来说,下一步就是添加对常见Java HTTP客户端API的支持,例如java.net.URI / URL,Retrofit v2,OkHttp v3以及客户端库。流行的服务器端框架:Spring Feign,MicroProfile REST Client等。这种新添加的支持的优点在于,IDE现在可以为HTTP / WebSocket API提供URL补全和导航。
    5. 对于下一阶段,我们认为可以为您的项目中的端点提供一个不错的布局,因此我们添加了全新的“端点”工具窗口。此窗口显示客户端和服务器API的聚合视图。逐渐地,它将成为所有API的中心位置,不仅是HTTP,而且是消息传递,gRPC和GraphQL。
    6. 最后,我们增加了对API文档规范的扩展支持。在此版本中,它是Swagger v2和OpenAPI Specification v3。我们希望在工作中使用规范优先方法的任何人都将在其IDE中包含API描述的YAML / JSON文件中享受通过模式验证,代码完成,导航,查找用法以及重命名重构的支持。
    7. 目前,仅支持Java和Kotlin项目,但是我们对此有更大的计划,并且在将来的版本中,我们将支持范围扩展到更多的语言和框架。
    8. 最重要的是,IntelliJ IDEA 2019.3引入了备受期待的MongoDB支持。目前,这只是初步支持,但我们计划在将来增强它。IntelliJ IDEA现在使您能够查看数据库浏览器中的集合和字段,运行查询以及查看查询结果。
      拒绝Bug,Java开发利器IntelliJ IDEA最新版本2019.3重磅更新
      重要的错误修复

我们已经解决了很多问题,以下是最值得注意的问题:

  • 现在,通过Homebrew安装IntelliJ IDEA时,可以找到已安装Gradle的目录。
  • 现在,手动设置Gradle主目录更加容易。
  • IDE现在支持在Linux上通过KWallet存储密码。
  • 当您使用JavaFX项目时,IDE可以在Scene Builder选项卡中显示带有嵌入式Scene Builder的FXML文件。
  • 调试工具窗口中的键盘导航现在可以使用。
  • 现在可以使用Ctrl + C复制检查弹出窗口中的选定文本。
  • 在IDE窗口之间切换时,焦点不会丢失。
  • 修复了窗口和弹出位置。
  • 在IDE中选择Darcula主题时,将以深色主题打开调用的macOS窗口。

我们还更新了JetBrains Runtime 11(JBR 11),以集成许多修复程序。

  • 修复了macOS Catalina上的字体渲染。
  • 解决了在macOS 10.15 Catalina上打开项目的问题。
  • 修复了“评估表达式”对话框中的符号。
  • 当前检测到与操作系统的键盘布局冲突。
  • 编辑器中的字体总是斜体的问题已得到解决。
  • 修复了Windows上的“欢迎”屏幕。
  • IDE现在会警告IDE键盘映射与本机OS键盘映射发生冲突。
  • 修复了编辑器中不正确的字体(斜体)。

其他变化

  • 此版本还包含了Android Studio 3.5的所有更改。
  • 我们还取消了Vaadin和Java Applets支持插件的捆绑。这些插件将在我们的插件存储库中可用,并且可以手动安装。

猜你喜欢

转载自blog.51cto.com/14499080/2458076