前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >IntelliJ IDEA - 2022.2 正式发布!众多特性解读!

IntelliJ IDEA - 2022.2 正式发布!众多特性解读!

作者头像
Spark学习技巧
发布2023-03-21 11:31:14
5.1K0
发布2023-03-21 11:31:14
举报
文章被收录于专栏:Spark学习技巧Spark学习技巧

IntelliJ IDEA 2022.2 包括对远程开发功能的多项质量改进,使其更时尚、更稳定。从 v2022.2 开始,IntelliJ IDEA 使用 JetBrains Runtime 17,它在许多方面增强了 IDE 体验和性能。IntelliJ IDEA Ultimate 增加了对 Spring 6 和 Spring Boot 3 功能的支持,并为其他几个框架引入了更新。新版本提供了许多其他值得注意的升级和改进,下面将详细介绍。

关键更新

远程开发改进 我们在 IntelliJ IDEA 2022.2 中引入了大量远程开发的重大升级,让您的体验更加稳定和功能丰富。新发布的更新带来了各种质量改进。通过 SSH 将您的笔记本电脑连接到安装在远程服务器上的 IntelliJ IDEA,并获得流畅的开发人员体验。如果您使用 JetBrains Space 通过新版本有效地编排后端,您可以直接从 IntelliJ IDEA 管理您的开发环境。

从 JBR 11 到 JBR 17 的转换

从 v2022.2 开始,所有 IntelliJ IDEA 更新都附带 JetBrains Runtime 17 (JBR 17),这带来了显着的 IDE 性能改进、更好的安全性、由于Metal API而在 macOS 上增强的渲染性能等等。

支持 Spring 6 和 Spring Boot 3 功能 IntelliJ IDEA 2022.2 现在完全支持 Spring 6 和 Spring Boot 3 功能,包括新@AutoConfiguration类和 @ConfigurationProperties具有新构造函数绑定语法的类,而无需显式@ConstructorBinding. 如果您想尝试 Spring 6 或将您的项目切换到这个新版本,请不要忘记更新 IDE。

用户体验

运行当前文件

为了在没有专门的运行配置的情况下更轻松地运行和调试单个文件,我们引入了运行/调试小部件中可用的新运行当前文件功能。在它的帮助下,您可以运行和调试当前打开的文件,IDE 将自动使用最适合该文件的运行配置类型。

全局更改字体大小的键盘快捷键

有一个新的键盘快捷键可以更改编辑器中各处的字体大小。要增加字体大小,请按⌃⇧Period。要减小它,请按⌃⇧Comma。此外,现在有一个字体大小指示器显示当前字体大小以及将其恢复为默认值的选项。

在 macOS 上合并所有项目 Windows操作

对于 macOS,我们引入了通过将所有打开的项目窗口合并为一个来组织工作空间的功能,将每个窗口变成自己的选项卡。要执行此操作,请转到Window | 合并所有项目窗口

用于突出显示检查的增强配置

您现在可以配置检查在编辑器中的显示方式,而无需更改其严重性级别。当您想要更改检查突出显示样式时,可以使用新的“编辑器中的突出显示”下拉菜单进行更改,该菜单可以方便地显示所有可用选项。

欢迎屏幕上的克隆存储库进度条

克隆存储库进度条现在出现在 IDE 的欢迎屏幕上,并显示在项目列表中,这使其更清晰、更易于使用。

助记书签的新描述字段

添加助记符书签”对话框已升级为“描述”字段,因此您现在可以立即向书签添加可选描述。

编辑器

禁用自动块注释关闭的新设置

现在可以在按下 时禁用自动块注释关闭Enter。为此,请转到设置/首选项 | 编辑 | Smart Keys 并取消选中Enter部分中的Close block comment复选框。

更快地访问代码完成设置

您现在可以直接从代码完成弹出窗口中的 kebab(三个垂直点)菜单按钮访问代码完成设置并配置您的首选项。

用于调整文件类型关联的新通知面板

当文件错误地与纯文本显式关联时,IntelliJ IDEA 现在会通知您错误的文件类型关联并建议直接从编辑器中重置它,而无需您在Settings / Preferences中手动进行。

在 Markdown 文件中生成目录的新操作

现在可以根据文档标题轻松地在 Markdown 文件中生成目录。此新操作可从“插入”和“生成”弹出菜单中获得,您可以通过⌘N快捷方式或右键单击来调用该菜单。IDE 将在当前插入符号位置插入目录并用<!-- TOC -->标记将其括起来,以便您以后可以通过调用相同的菜单对其进行更新。

Java

改进的检查和代码完成

我们对 Java 检查实施了一系列更改,以帮助您追踪潜在的错误并简化代码。例如,可以使用的标准“字符集”对象 检查已得到改进,因此它现在可以识别.name().toString(). IDE 现在可以在模式变量隐藏字段时向您发出警告,并捕获无意义Objects.requireNonNullElse的调用。许多与 JUnit 相关的 Java 检查已转换为 JVM 检查,因此它们现在也可以在 Kotlin 中使用。此外,代码完成现在建议.class适用的文字。

Kotlin

支持 Kotlin 调试器中的数据流分析

我们已将 Kotlin 调试器与数据流分析功能集成,现在它会显示 DFA 提示,显示哪些条件为真以及将执行哪些分支。以前,此集成 仅适用于 Java,但现在也支持 Kotlin。

IntelliJ IDEA 原生构建器使用项目中配置的 Kotlin 编译器版本

从 v2022.2 开始,捆绑的 Kotlin 编译器不再与 IntelliJ IDEA 原生构建器一起使用。本地和 CI 构建现在都使用项目设置中声明的 Kotlin 编译器版本运行。此更改消除了以前由于捆绑编译器版本与项目构建文件中定义的版本不匹配而出现的本地构建和 CI 构建之间的不一致。

改进了 Kotlin 的 IDE 性能

我们优化索引的最新工作对 IDE 在代码突出显示、完成和查找用法方面的速度和性能产生了积极影响。

Groovy

安全

导入受信任的 SSL 证书

IntelliJ IDEA 2022.2 现在可以帮助您从系统信任存储中导入受信任的 SSL 证书。它将自动使用特定于您的企业环境的自定义证书。您不需要采取额外的行动,因为一切都应该开箱即用。

Profiler

分析时可用的CPU堆内存图表

我们升级了 IntelliJ Profiler,让收集快照变得更加容易。现在,当您开始分析时,CPU堆内存实时图表与控制台并排显示。因此,您可以查看应用程序的执行情况,同时还可以在所需的分析期间从同一应用程序收集许多快照。

支持 Kotlin 内联函数

Kotlin 内联函数现在与其他函数一起显示在Flame GraphCall TreeMethod List中,允许您查看它们的 CPU 时间并在需要时对其进行优化。目前,该功能仅适用于Start profiling 选项,但我们也在努力尽快将其添加到Attach模式。

框架和技术

在 Spring 6 中支持新的声明式 HTTP 客户端

Spring Framework 6 允许您将 HTTP 客户端定义为带有注释方法的 Java 接口。IntelliJ IDEA 2022.2 为此类接口提供 URL 完成、导航以及与 HTTP 客户端的集成。

Spring Cloud Gateway 路由的 URL 完成和导航

IntelliJ IDEA Ultimate 现在为 Spring Cloud Gateway URL提供 URL 补全、 Search Everywhere 功能和Find Usages提示。您可以使用Endpoints工具窗口 轻松生成 HTTP 请求或查找所有网关路由

JVM 微服务测试和模拟框架的代码洞察改进

IntelliJ IDEA 2022.2 使用 Spring WebTestClient、RestAssured、WireMock 和 MockServer 等流行的 Java API 自动突出显示测试中的 JSON/XML 主体。因此,这些数据片段具有更好的可读性并且更易于编辑。您还可以使用 URL 完成并导航到测试中这些位置的声明。

用于 Java 的实验性 GraalVM 本机调试器 IntelliJ IDEA 2022.2 现在可以帮助您调试 GraalVM 原生映像二进制文件。您可以将调试器附加到任何基于 GraalVM 的可执行文件,或使用附加的调试器启动应用程序。将为 Maven/Gradle 项目自动创建相应的运行配置。此集成是实验性的,需要安装 GraalVM 的开发版本和 此插件。

改进了 Protobuf 和 Java 源之间的导航

您现在可以轻松地从.proto文件导航到生成的代码并返回。确保 gRPC 和 Protocol Buffers 插件都已启用。

Spring Shell 的代码洞察改进

IntelliJ IDEA 2022.2 现在可以识别使用 Spring Shell 库声明的 CLI 命令并检查它们的正确性。

改进了对 JAX-RS 端点的支持

IntelliJ IDEA 现在正确支持在 URL 完成、导航和Find Usages@ApplicationPath中声明为和子资源的JAX-RS 通用 Web 服务 URL 模式。

支持 HTTP 客户端中的 WebSocket 端点

IntelliJ IDEA Ultimate 2022.2 支持 WebSocket 连接,允许您创建请求以及发送和接收消息。

在 HTTP 客户端中支持 GraphQL 端点

IntelliJ IDEA Ultimate 现在可以开箱即用地通过 HTTP 和 WebSocket 协议发送 GraphQL 查询。对于http://https://,使用简单的 HTTP 请求,而ws://wss://被委托给 WebSocket 执行程序。

HTTP 客户端的 UI/UX 改进

我们对 HTTP 客户端实施了一些 UI/UX 改进。首先,我们介绍了一种使用装订线中的图标选择运行环境的便捷方法。要启用它,请从Run with组合框中选择Select Environment Before Run选项 。其次,我们通过添加进度条改进了响应视图,使您可以跟踪下载过程。

JSON、YAML 和 .properties 字符串值中的可点击 URL

JSON、YAML 和 .properties 文件现在具有在以http://https:// 开头的值内自动插入 Web 引用的功能。您可以轻松地在 Web 浏览器中一键打开这些链接,或者您可以从上下文操作菜单 (⌥⏎) 在 HTTP 客户端中生成请求。

改进了对 Bean Validation 注释的支持

IntelliJ IDEA 2022.2 现在为 Java 和 Kotlin 的 Bean Validation 注解中的消息属性提供引用并支持折叠。您可以对消息键使用完成或导航到 i18n ValidationMessages.properties文件中的声明。

改进的 AWS CloudFormation 插件

我们通过更新元数据模式和改进属性完成对 AWS CloudFormation 插件进行了重新设计。您可以 从 JetBrains Marketplace 安装插件的更新版本。

支持 Jakarta Persistence 3.1 IntelliJ IDEA 现在支持 Jakarta Persistence 3.1中的所有功能,包括新的 JPQL 语法、函数和类型,并为它们提供语言突出显示和代码完成。

Docker

使用 Testcontainers 在测试中完成 Docker 映像

IntelliJ IDEA 2022.2 为 Testcontainers API 引入了镜像补全,您可以在其中找到所有可用的 Docker 镜像及其版本。单击参考以在您的 Web 浏览器中打开相应的 Docker Hub URL。

将本地 Docker 镜像上传到 Minikube 和其他连接

现在可以使用新的Copy Docker Image操作轻松地将图像从一个 Docker 守护程序复制到另一个,该操作将图像保存到文件中,然后将其推送到所选连接。

IDE 重启时 Docker 自动连接

IntelliJ IDEA 2022.2 现在会在您重新启动 IDE 后自动连接到 Docker。此新设置默认启用,但可以在设置/首选项 |中关闭。 高级设置 | 码头工人

不同 Docker 守护进程的 Docker 连接选项

从 v2022.2 开始,IntelliJ IDEA 与 Colima 和 Rancher 集成以支持更多选项来建立与 Docker 守护程序的连接。

Kubernetes

Kubernetes 和 Telepresence 集成 IntelliJ IDEA 2022.2 的 Kubernetes 插件提供与 Telepresence 工具的集成,以便拦截来自 Kubernetes 集群中服务的 HTTP 请求,并将它们路由到本地运行的服务。这使您可以更轻松地调试这些服务并仅在本地运行所需的服务子集。

改进了页面对象编辑器中的网页结构

网页结构UI得到了显着改进。由于文本格式突出显示,现在您可以轻松阅读最重要的部分,例如标签名称、ID 和应用的 CSS 类。

通过排水沟图标轻松导航

现在,您只需单击装订线中的图标即可轻松导航回页面元素。

来自 URL 的页面对象命名

创建新页面对象文件时,向导现在提供了一个可选的 URL 字段。如果包含 Web 地址,向导会根据链接地址建议页面对象文件名。此外,页面对象编辑器打开时会自动加载插入的 URL。

自动插入符号移动到代码块的末尾

在您的代码中添加新的页面元素时,插入符号现在会自动移动到添加的代码块的末尾,因此您可以轻松地导航它并继续编辑。

从上下文菜单创建一个新的页面对象

每当您在处理现有页面对象类时键入新的未引用页面对象类时,您只需导航到警告的上下文菜单并创建新页面对象即可修复未解析的代码警告。

导入多个 CSV 文件的选项

对于 v2022.2,我们通过实现选择多个 CSV 文件并一次导入它们的功能来增强文件导入过程。

修改对话框的新 UI

“修改”对话框的新 UI已成为默认选项。从版本 2022.2 开始,可以使用此新 UI 添加和编辑表格的所有子对象。旧 UI 将通过上下文菜单保持可用。

游乐场脚本解析模式 为了确保 SQL 脚本中的数据库对象得到更精确的解析,我们实现了两种解析模式:PlaygroundScript。如果您的文件只是一组彼此独立且没有特定顺序的未连接查询,则第一个是更好的选择。当您的查询具有顺序逻辑并且应该作为单个脚本运行时,第二个更好。

Web开发

支持 Angular 独立组件

我们一直在积极致力于 IntelliJ IDEA 2022.2 中对 Angular 14 的支持。我们在此版本中所做的最重要的补充是对 Angular 独立组件的支持。IntelliJ IDEA 现在可以正确识别标记为standalone: true.

改进了对 Vue 3 的支持 IntelliJ IDEA 2022.2 为 Vue 3 提供了更好的支持。例如,它现在可以理解v-if/else指令中的类型缩小。此外,对 Pania(Vue 团队推荐的作为全局存储的状态管理解决方案)的支持也得到了改进。现在,完成和解析都可以在 Vue 中与 Pinia 库一起使用,并且您可以导航到商店中定义的状态属性和操作。

TypeScript 4.7 支持

IntelliJ IDEA 2022.2 与 TypeScript 4.7 捆绑在一起,支持Node.js 中的moduleSuffixes和 ESM等新语言功能。如果模块在tsconfig.json文件中设置为 node16 或 nodeext,它将自动将.js扩展名插入到 import 语句中。此外,IDE 支持package.json文件中的typesVersions字段。

Scala

更好的 Scala 3 支持

从 v2022.2 开始,IntelliJ IDEA 可以从.tasty文件中读取匹配类型,正确解析它们,解析类型变量,将它们用作类型参数,支持检查,并将类型显示为文本。最重要的是,我们添加了对 无选项提取器类型 lambdas多态函数类型类型级编译器内在函数的支持,并作为通配符与 ?_在 Scala 2.13.9 和 2.12.16 中。复制粘贴的代码现在也可以正确缩进。

新的 Scala 检查

IntelliJ IDEA 2022.2 现在会在return匿名函数中使用关键字时向您发出警告,以跳出函数而不执行其中的所有代码。这通常不是预期的用途,并且可能导致泄漏的实现和隐藏的性能成本。当私有触发一个新的警告参数隐藏超类变量。此外,当您尝试以编译器禁止的方式覆盖变量时,会显示错误。这些新警告可以配置为在它们各自的编译器选项 (-Xlint:nonlocal-return-Xlint:private-shadow) 存在时显示。

将逗号分隔的元素列表拆分为单独的行

如果您的代码行太长,因为它包含集合中的参数或元素列表,您现在可以使用弹出菜单中的 将参数放在单独的行上操作来快速将列表拆分为多行。相反的情况也是可能的——如果您认为多行列表足够短,您可以使用将参数放在一行操作使它们成为一行。

Scala 的基于编译器的高亮显示

基于编译器的突出显示已针对更好的资源使用进行了调整。IDE 现在尊重用户定义的文件突出显示设置。现在在更少的情况下触发编译并使用更少的后台线程。编译范围已缩小到相关模块和源代码范围。

安全删除现在可用于类型参数

安全删除操作从定义及其所有调用中删除一个元素。此操作现在也适用于类型参数。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-08-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 浪尖聊大数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关键更新
    • 远程开发改进 我们在 IntelliJ IDEA 2022.2 中引入了大量远程开发的重大升级,让您的体验更加稳定和功能丰富。新发布的更新带来了各种质量改进。通过 SSH 将您的笔记本电脑连接到安装在远程服务器上的 IntelliJ IDEA,并获得流畅的开发人员体验。如果您使用 JetBrains Space 通过新版本有效地编排后端,您可以直接从 IntelliJ IDEA 管理您的开发环境。
      • 从 JBR 11 到 JBR 17 的转换
        • 支持 Spring 6 和 Spring Boot 3 功能 IntelliJ IDEA 2022.2 现在完全支持 Spring 6 和 Spring Boot 3 功能,包括新@AutoConfiguration类和 @ConfigurationProperties具有新构造函数绑定语法的类,而无需显式@ConstructorBinding. 如果您想尝试 Spring 6 或将您的项目切换到这个新版本,请不要忘记更新 IDE。
        • 用户体验
          • 运行当前文件
            • 全局更改字体大小的键盘快捷键
              • 在 macOS 上合并所有项目 Windows操作
                • 用于突出显示检查的增强配置
                  • 欢迎屏幕上的克隆存储库进度条
                    • 助记书签的新描述字段
                    • 编辑器
                      • 禁用自动块注释关闭的新设置
                        • 更快地访问代码完成设置
                          • 用于调整文件类型关联的新通知面板
                            • 在 Markdown 文件中生成目录的新操作
                            • Java
                              • 改进的检查和代码完成
                                • 支持 Kotlin 调试器中的数据流分析
                                  • 改进了 Kotlin 的 IDE 性能
                                  • Groovy
                                  • 安全
                                    • 导入受信任的 SSL 证书
                                    • Profiler
                                      • 分析时可用的CPU和堆内存图表
                                        • 支持 Kotlin 内联函数
                                        • 框架和技术
                                          • 在 Spring 6 中支持新的声明式 HTTP 客户端
                                            • Spring Cloud Gateway 路由的 URL 完成和导航
                                              • JVM 微服务测试和模拟框架的代码洞察改进
                                                • 用于 Java 的实验性 GraalVM 本机调试器 IntelliJ IDEA 2022.2 现在可以帮助您调试 GraalVM 原生映像二进制文件。您可以将调试器附加到任何基于 GraalVM 的可执行文件,或使用附加的调试器启动应用程序。将为 Maven/Gradle 项目自动创建相应的运行配置。此集成是实验性的,需要安装 GraalVM 的开发版本和 此插件。
                                                  • 改进了 Protobuf 和 Java 源之间的导航
                                                    • Spring Shell 的代码洞察改进
                                                      • 改进了对 JAX-RS 端点的支持
                                                        • 支持 HTTP 客户端中的 WebSocket 端点
                                                          • 在 HTTP 客户端中支持 GraphQL 端点
                                                            • HTTP 客户端的 UI/UX 改进
                                                              • JSON、YAML 和 .properties 字符串值中的可点击 URL
                                                                • 改进了对 Bean Validation 注释的支持
                                                                  • 改进的 AWS CloudFormation 插件
                                                                    • 支持 Jakarta Persistence 3.1 IntelliJ IDEA 现在支持 Jakarta Persistence 3.1中的所有功能,包括新的 JPQL 语法、函数和类型,并为它们提供语言突出显示和代码完成。
                                                                    • Docker
                                                                      • 使用 Testcontainers 在测试中完成 Docker 映像
                                                                        • 不同 Docker 守护进程的 Docker 连接选项
                                                                        • Kubernetes
                                                                          • Kubernetes 和 Telepresence 集成 IntelliJ IDEA 2022.2 的 Kubernetes 插件提供与 Telepresence 工具的集成,以便拦截来自 Kubernetes 集群中服务的 HTTP 请求,并将它们路由到本地运行的服务。这使您可以更轻松地调试这些服务并仅在本地运行所需的服务子集。
                                                                            • 改进了页面对象编辑器中的网页结构
                                                                              • 来自 URL 的页面对象命名
                                                                                • 自动插入符号移动到代码块的末尾
                                                                                  • 从上下文菜单创建一个新的页面对象
                                                                                    • 每当您在处理现有页面对象类时键入新的未引用页面对象类时,您只需导航到警告的上下文菜单并创建新页面对象即可修复未解析的代码警告。
                                                                                      • 导入多个 CSV 文件的选项
                                                                                        • 修改对话框的新 UI
                                                                                          • 游乐场和脚本解析模式 为了确保 SQL 脚本中的数据库对象得到更精确的解析,我们实现了两种解析模式:Playground和Script。如果您的文件只是一组彼此独立且没有特定顺序的未连接查询,则第一个是更好的选择。当您的查询具有顺序逻辑并且应该作为单个脚本运行时,第二个更好。
                                                                                          • Web开发
                                                                                            • 支持 Angular 独立组件
                                                                                              • 改进了对 Vue 3 的支持 IntelliJ IDEA 2022.2 为 Vue 3 提供了更好的支持。例如,它现在可以理解v-if/else指令中的类型缩小。此外,对 Pania(Vue 团队推荐的作为全局存储的状态管理解决方案)的支持也得到了改进。现在,完成和解析都可以在 Vue 中与 Pinia 库一起使用,并且您可以导航到商店中定义的状态属性和操作。
                                                                                                • TypeScript 4.7 支持
                                                                                                • Scala
                                                                                                  • 更好的 Scala 3 支持
                                                                                                    • 新的 Scala 检查
                                                                                                      • Scala 的基于编译器的高亮显示
                                                                                                        • 安全删除现在可用于类型参数
                                                                                                        相关产品与服务
                                                                                                        容器镜像服务
                                                                                                        容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
                                                                                                        领券
                                                                                                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档