IntelliJ IDEA 2021.3 最新变化
IntelliJ IDEA 2021.3 为远程开发 (Beta) 提供支持,并引入了一种使用 Repair IDE...(修复 IDE...)操作对 IDE 问题进行故障排除的新方式。 同时,它还为 Kotlin 带来了调试器更新和 Constant conditions(常量条件)检查,以及其他实用变更。 以下简短描述详细解释了这些更新和其他关键功能。
主要更新
远程开发
BETA
ULTIMATE
IntelliJ IDEA Ultimate 现已支持测试版本的远程开发工作流。 您可以从世界任何地方轻松连接到运行 IntelliJ IDEA 后端的远程计算机。 所有处理都将在这台强大的远程计算机上进行,您将能够像在本地计算机上一样无缝地处理项目。 可以在 IntelliJ IDEA 的欢迎屏幕或通过 Toolbox App 中新增的 JetBrains Gateway 应用程序启动此功能。
此外,您还可以借助 Space 这款整体软件开发管道的一站式平台,创建、预构建、共享、重现、休眠和管理开发环境。
IDE 问题故障排除
IntelliJ IDEA 2021.3 能够以一种全新的快速方法诊断和修正导致 IDE 无法正常工作的问题。 如果 IDE 运行不正常,您可以从 File(文件)菜单调用新的 Repair IDE…(修复 IDE…)操作。 它将通过一系列步骤引导您解决一些最常见的问题。
Kotlin 的 Constant conditions(常量条件)检查
我们添加了新的 Constant conditions(常量条件)检查,协助 IntelliJ IDEA 报告静态已知始终为 true、false、null 或零的非普通条件和值。 它的工作方式与 Java 的类似检查相同,并且支持大多数相同的检查。 可以在 Preferences/ Settings | Editor | Inspections | Kotlin | Probable bugs(偏好设置 / 设置 | 编辑器 | 检查 | Kotlin | 可能的错误)中找到这个新检查。
PreviousNext
Kotlin 调试器更新
Smart Step Into(智能步入)
当您想要调试具有链式方法调用和 lambda 的表达式时,Step Into(步入)操作可以默认提供 Smart Step Into(智能步入)的功能。 它将高亮显示能够步入的方法和 lambda。 要开始使用,请点击位于 Debug(调试)工具窗口顶部窗格中的 Step Into(步入)按钮或使用 F7 快捷键。 然后,IDE 将高亮显示能够步入代码的位置,您可以点击选择所需的行。
内联堆栈帧
调试器现在可以检测 Kotlin 内联函数并在堆栈跟踪面板中显示内联函数调用。 您可以导航到这些调用,还可以检查和评估每个帧的变量。
编辑器
PreviousNext
更改所有选项卡的字体大小
我们根据用户请求做出了更新,支持在 macOS 上使用 ⌘+鼠标滚轮或在 Windows 和 Linux 上使用 Ctrl+鼠标滚轮同时更改所有打开的选项卡的字体大小。 要启用此功能,首先转到 Preferences / Settings | Editor | General(偏好设置 / 设置 | 编辑器 | 常规),选择 Change font size with Command + mouse wheel in(使用 Command + 鼠标滚轮更改字体大小),然后选择 All editors(所有编辑器)。 如果选择 Active editor(有效编辑器),则快捷键将仅在您当前处理的文件中更改字体大小。
PreviousNext
改进了意图预览
IntelliJ IDEA 添加了一个实用选项,允许您在将意图操作和快速修复应用于代码之前预览其结果。 此功能在 Intention actions(意图操作)菜单中可用。 要激活预览,在 macOS 上按 F1 或在 Windows 和 Linux 上按 Ctrl+Q。
自 v2020.1 引入意图预览起,我们就一直在持续改进。 在 IntelliJ IDEA 2021.3 中,它适用于 Kotlin 中的更多意图操作和快速修复,并且“预览不可用”消息已被替换为不支持的意图操作的更详尽 HTML 描述。 此外,对于修改多个文件的操作,预览会显示可能结果的一部分。 这一部分结果应该足以展现操作将带来的变化。
改进了 Markdown 支持
在 IntelliJ IDEA 2021.3 中,表的创建更加简单。 只需调用上下文菜单并选择 Insert | Table(插入 | 表)。 就是这样! 您可以使用鼠标悬停操作或键盘选择首选大小。
表中的单元格宽度将随键入做出调整。 您可以使用浮动工具栏编辑表内容。
要创建新行,您可以使用 Shift+Enter 和 Tab 导航到下一个单元格。
用户体验
PreviousNext
新的 Bookmarks(书签)工具窗口
我们引入了新的 Bookmarks(书签)工具窗口,取代与其类似的 Favorites(收藏夹)实例。 从现在开始,您只需在 macOS 上使用 F3 快捷键或在 Windows 和 Linux 上使用 F11 即可将文件、文件夹和类标记为重要。
添加书签时,IntelliJ IDEA 默认会将其置于 Bookmarks(书签)工具窗口下以项目命名的节点中。 每次添加新书签,它都会出现在此节点内的列表顶部。 您可以使用工具窗口设置中的 Sort Groups and Bookmarks(排序组和书签)选项按类型对书签进行排序。 您还可以创建新节点并在其中拖放条目。
拆分 Run(运行)工具窗口
在 v2021.3 中,可以拆分包含选项卡的 Run(运行)工具窗口 。 这让您能够同时运行多个配置和查看所有结果。
要拆分窗口,请将要查看的选项卡拖放到 Run(运行)工具窗口内的高亮显示区域。 要再次取消拆分窗口,请右键点击顶部窗格并从上下文菜单中选择 Unsplit(取消拆分)。
Search Everywhere(随处搜索)中基于机器学习的操作搜索
在搜索操作时,IntelliJ IDEA 中的 Search Everywhere(随处搜索)现在默认由机器学习驱动。 我们训练了一个基于机器学习的公式,它会考虑以下信息:
- 特定用户的操作使用历史记录。
- 整个用户群的操作使用频率。
- 搜索查询的长度、操作的名称等。
我们希望基于机器学习的模型可以提高您的搜索质量并根据您的特定需求返回最合适的结果。
改进了 Find Usages(查找用法)
当您在 macOS 上通过 ⌥F7 或在 Windows 和 Linux 上通过 Alt+F7 搜索方法实现的用法时,IDE 不再询问您是否要在弹出窗口中查找基方法的用法。 取而代之的是,IntelliJ IDEA 将默认使用顶级层次结构方法作为搜索的目标。 要更改此行为,请点击齿轮图标,取消选中 Find Usages(查找用法)工具窗口设置中的 Search for base method usages(搜索基方法用法)复选框。
PreviousNext
重新设计了 Show Usages(显示用法)
Show Usages(显示用法)对话框获得了多个新功能。 我们推出了基于发现的用法的源代码预览,您可以点击顶部工具栏窗格中的方形图标查看。 另一项更新让您可以使用位于 Preview(预览)图标旁边新增的下拉列表更改搜索范围。 此外,窗口的标题栏现在会显示您正在搜索的代码元素的类型和找到的用法数量。
另一个非常方便的小更新允许您设置对话框宽度,IDE 将在下次调用时保留该宽度。
重新设计了 Empty Project(空项目)并添加了新的 Multi-Module Project(多模块项目)节点
在 v2021.3 中,您会发现 IntelliJ IDEA 项目向导中的节点发生了一些变化。
您可以选择 Empty Project(空项目)节点创建一个基本项目,用于处理不同类型的单独文件以及添加 Java 和 Kotlin 类。 IDE 将自动配置项目,让您可以在存在 Java 或 Kotlin 类时对其进行编译。
新的 Multi-Module Project(多模块项目)节点让您可以从头开始创建具有复杂结构的项目。 创建项目后,Project Structure(项目结构)对话框将打开,您可以添加各种模块。
无障碍功能更新
IntelliJ IDEA 2021.3 解决了一些无障碍功能问题,让屏幕阅读器更为舒适。 我们根据请求,禁用了过去在鼠标悬停时出现的工具窗口微件弹出窗口和快速文档弹出窗口。 我们还修正了调用 Go to Declaration(转到声明)对话框时会出现的问题。
在此版本中,macOS 上的无障碍功能支持也得到了改进。 我们解决了 VoiceOver 焦点的几个问题,并使屏幕阅读器可以在您创建项目时检测 New Project(新建项目)向导中的列表项。 我们减少了播放声音的帮助工具提示的数量,以最大限度地降低编码时的干扰。
Java
PreviousNext
用于跟踪不安全字符串的检查
IntelliJ IDEA 现在会针对 SQL 注入和 XSS 缺陷、敏感数据泄漏和不安全的反序列化等危险发出警告。 它还可以防止您将不安全的数据传递给安全的方法。 这些额外的警告由新的 Non-safe string is passed to a safe method(不安全字符串被传递至安全方法)检查提供。
@.checker.tainting.qual
PreviousNext
其他新的 Java 检查
collect(toList()).toList()collection.addAll(List.of("x"))collection.add(x)map.putAll(Map.of("a", "b"))map.put("a", "b")
PreviousNext
改进的重构
在 Java 中引入局部变量时,适用的设置不会再出现在弹出窗口中,这个弹出窗口之前会覆盖您编写的代码。 更新后,您可以点击变量旁边的齿轮图标或者在 macOS 上使用 ⌥⇧O 快捷键或在 Windows 上使用 Alt+Shift+O 访问这些选项。
我们还改进了 Introduce parameter(引入形参)重构。 在 macOS 上使用 ⌥⌘P 或在 Windows 和 Linux 上使用 Ctrl+Alt+P 调用此重构时,IDE 会询问您要替换匹配项的位置。 完成选择后,将出现一个齿轮图标,点击该图标即可为重构配置更多设置。
Run/Debug Configurations(运行/调试配置)中的可自定义类路径
有时您可能需要在 Run/Debug Configurations(运行/调试配置)对话框中针对不同的配置定义自定义类路径。 从这个版本开始,选择 Modify options | Modify classpath(修改选项 | 修改类路径)即可完成此操作。
Kotlin
Extract constant(提取常量)重构
我们引入了一种新的重构,让您可以在 Kotlin 中提取常量。 要使用这个重构,请将文本光标置于字符串上,然后在 macOS 上按 ⌥⌘C 或在 Windows 和 Linux 上按 Ctrl+Alt+C。
改进了 Possibly blocking call in non-blocking context(可能在非阻塞上下文中使用阻塞调用)检查
如果您在错误的上下文中使用协同程序,Possibly blocking call in non-blocking context(可能在非阻塞上下文中使用阻塞调用)检查会发出警告。 在此版本中,此检查既提供警告,也提供上下文相关的快速修复。
另外,我们还做出了一些额外改进。 此检查现在涵盖更多情况,并且可自定义,能够更好地适应特定环境。
范围的内联提示
有时,Kotlin 所支持范围的各种声明方式可能较难理解。 为了将其简化,我们添加了内联提示,用简单的数学符号解释范围内单词或符号的含义。 如果您不需要此功能,可以右键点击提示并选择 Disable ‘Ranges’ hints type(禁用“范围”提示类型)将其禁用。
更出色的 New Project(新建项目)向导
我们重新设计了 New Project(新建项目)向导的布局,为所有字段添加了工具提示,让您轻松了解所需信息。 模板部分也已更新。我们移除了一些冷门模板并添加了一个新模板,可供创建 Compose Web 应用程序。
最后,项目设置步骤也得到简化。 现在只有基本字段需要填写。
Scala
Scala 3 支持改进
endgivenusingexportpackage objectsgivenfinalabstract lazy vals
将 Scala 3 / Scala 2 交叉编译项目作为 Scala 2 打开的选项
许多应该针对 Scala 2 和 Scala 3 编译的项目被建模针对 Scala 2 交叉编译的 Scala 3 项目,而其实际上是 Scala 2 项目。
将此类项目作为 Scala 2 打开,可以让 IDE 使用正确的 Scala 版本,这种操作也更为可靠。
Scala 的数据流分析
Scala 编译器选项的自动补全
Scala 编译器中选项极多,很少有程序员能够全部掌握。 此外,这些选项还因所用 Scala 版本而异。
您现在可以自动补全适用的选项,还可以查看各个选项的快速文档。
范围的内嵌提示
1 to 31 until 3Range(1, 3)
JavaScript
用于更新依赖项的新检查
ULTIMATE
IntelliJ IDEA 2021.3 允许您直接从编辑器将 npm 软件包更新到最新版本! 打开 package.json 文件,将文本光标放在要更新的软件包版本上,在 macOS 上按 ⌥⏎ 或在 Windows 和 Linux 上按 Alt+Enter,然后选择 Update ‘package name’ to the latest version(将“软件包名称”更新到最新版本)。 将鼠标悬停在软件包版本上时,还会显示快速修复。
改进了 HTML 代码补全
ULTIMATE
我们改进了代码补全在 HTML 中的工作方式。 每当您在编辑器中输入标记名称或缩写或者调用代码补全,IntelliJ IDEA 都会立即显示相关建议。 先前,只有首先输入 < 才会显示。 此外,字符实体引用的代码补全现在也可以更好地工作。
SSH
PreviousNext
SSH 连接的代理支持
这项备受期待的新功能允许您在 Preferences/Settings | Tools| SSH Configurations(偏好设置 / 设置 | 工具 | SSH 配置)中为 SSH 配置指定 HTTP 或 SOCKS 代理服务器。 在新的 HTTP/SOCKS Proxy(HTTP/SOCKS 代理)部分下,您可以选择代理类型,输入主机名和端口,并在必要时使用用户名和密码应用身份验证。 也可以将 SSH 代理设置与全局 IDE 设置同步。 选中 Use global IDE proxy settings(使用全局 IDE 代理设置)复选框即可。
性能分析器
.jfr
ULTIMATE
更新后,可以更轻松地检查变更是否适用于程序或导致了回归。 为此,只需在 Profiler(分析器)工具窗口中打开两个要比较的快照。 在最近的快照中,点击差异图标,选择将用作基线的快照。 IDE 将以火焰图、调用树或方法列表的形式显示结果。
Windows 上的 Async Profiler 2.0 支持
ULTIMATE
在 v2021.2 中,我们为 macOS 和 Linux 版本的 IntelliJ IDEA 添加了对 Async Profiler 2.0 的支持。 从 v2021.3 开始,Windows 版本也将直接支持 Async Profiler 2.0。 这一支持将使分析更为流畅,也改进了原生函数在快照中的显示方式。
生成工具
重新设计了 Maven 配置
我们在此版本中对运行/调试配置做出了多项改进,其中包括 Maven 配置的重新设计。 关键参数均集中在一个屏幕上,其他选项可通过 Modify(修改)选项调取。
.mvn/maven.config 支持
如果要在 .mvn/maven.config 文件中为每个项目配置 Maven 设置,首先请转到 Preferences/ Settings | Build, Execution, Deployment | Maven(偏好设置 / 设置 | 构建、执行、部署 | Maven),然后在屏幕底部选择 Use settings from .mvn/maven.config(使用来自 .mvn/maven.config 的设置)。 请记住,此文件中的设置会覆盖标准的 Maven UI 设置。
版本控制
远程分支的 Checkout and Rebase onto Current(签出并变基到当前分支)
如果需要签出所选分支并将其变基到当前签出的分支之上,现在您可以使用 Checkout and Rebase onto Current(签出并变基到当前分支)操作,该操作此前仅适用于本地分支。 在 IntelliJ IDEA 2021.3 中,您也可以将其用于远程分支。
PreviousNext
重新组织了 VCS 设置
我们改进了 Preferences/Settings | Version Control(偏好设置 / 设置 | 版本控制)中设置的结构,并使部分关键配置更加醒目。 Version Control(版本控制)节点现在是导航的起点,带有指向所有可用设置的链接。 转到 Git 节点后,您可以发现所有设置已被划分为几个部分,对应最重要的流程:Commit(提交)、Push(推送)和 Update(更新)。 此外,这些部分中的参数现在组织得更合乎逻辑。 我们还为 Directory mappings(目录映射)添加了一个单独的节点,并将后台操作设为默认开启。 Background(背景)节点不再存在。
新 Changes(变更)工具窗口
从 IntelliJ IDEA 2021.3 开始,IDE 将在位于编辑器左侧的单独的 Changes(变更)工具窗口中显示每次提交的数据之间的差异。
新的 Push All up to Here(推送此前所有提交)操作
新增操作允许您只推送您确信的提交,将其他提交留待以后处理。
这将使您可以推送您在 Git 工具窗口的 Log(日志)选项卡中所选及其之前的提交。 要使用此操作,首先右键点击停止处的提交,调用上下文菜单,然后选择新的 Push All up to Here(推送此前所有提交)操作。
Align Changes Highlighting(对齐变更高亮显示)
我们在齿轮图标下的 Diff(差异)屏幕设置中添加了新的 Align Changes Highlighting(对齐变更高亮显示)选项。 此功能可改良 Diff(差异)的易读性,使未更改的行对齐并并排显示,特别适用于复杂修改。 这有助于您更清楚地查看已添加或移除的代码。
终端
Windows 上的 ConPTY 支持
在 v2021.3 中,我们在 Windows 上引入了对新 ConPTY API 的支持。 它解决了基于 winpty 的旧实现上的几个问题,并在终端中增加了对 24 位颜色的支持。
键盘缓冲支持
我们在 IntelliJ IDEA 终端中新添加的键盘缓冲支持可预测文本修改并立即以浅灰色显示。 此功能将帮助您在本地和远程计算机上保持同样的终端输入速度。
调试器
评估来自调试器的表达式
在此版本中,我们改进了 Evaluate(评估)功能的外观。 此前,用户在进行评估时大多倾向于使用监视。 用户会创建一个监视再将其移除,而不会使用 Evaluate(评估)对话框。 Evaluate(评估)字段是最便捷的表达式评估方式,更新后将更为醒目,可在 Debug(调试)工具窗口中直接访问。
框架与技术
PreviousNext
HTTP 客户端中的 gRPC 请求
ULTIMATE
IntelliJ IDEA 的 HTTP 客户端为 gRPC 请求提供了基本支持。 当您输入 GRPC 关键字来启动请求时,HTTP 客户端会提供代码补全。 因此,您的 IDE 会提示所有已知的 gRPC 服务、特定服务器的一元和服务器流方法,以及(最重要的)请求正文的字段。
.proto
HTTP 客户端中的二进制响应
ULTIMATE
HTTP 客户端可以检测响应中的图像并在响应控制台中显示预览。
对 HTTP 客户端中文本流和 JSON 流的支持
ULTIMATE
在 IntelliJ IDEA 中测试流应用程序时,HTTP 客户端将即时显示输出,您不再需要等待流结束。 这是因为我们添加了对以下内容类型的支持:text/event-stream、application/stream+JSON 和 application/x-ndjson。 当流结束时,您也会收到通知。
到 HTTP 客户端中自定义文件或目录的输出重定向
ULTIMATE
在 HTTP 客户端中,可以将输出重定向到自定义文件或目录。 您可以使用两个运算符进行强制重定向和软重定向:
>>>>!
PreviousNext
对 HTTP 请求标识符的支持
ULTIMATE
对于请求标识符,您可以通过 @name 将其添加为注释,也可以在第一个分隔符 (###) 中将其添加为文本。 IDE 能够理解这些标识符,并允许您从 Services(服务)工具窗口以及 Run Configuration(运行配置)、Run Anything(运行任何内容)和 Search Everywhere(随处搜索)对话框调用其请求。
Qute 模板语言支持
ULTIMATE
Qute 现在也是受支持的模板语言。 这意味着 IntelliJ IDEA 将提供代码高亮显示、自动补全和其他实用功能,帮助您为 Quarkus 项目开发模板。
辅助规范文件中的引用解析和补全
ULTIMATE
$ref
反应式代码的新阻塞和非阻塞注解
ULTIMATE
@Blocking@NonBlocking
另外,IDE 已自动支持来自 Micronaut 和 SmallRye Mutiny 的相应注解。
改进了 Spring 和 Java EE 中的阻塞代码检测
ULTIMATE
@Transactional
改进了 Spring Boot 配置
ULTIMATE
我们重新设计了 Spring Boot 项目的 Run/Debug Configurations(运行/调试配置)对话框。 新设计类似于先前更新的 Java 配置。 新界面在一个屏幕上显示多个关键设置,并允许您通过 Modify Options(修改选项)配置更多参数。
改进了对 Spring Boot 应用程序文件的支持
ULTIMATE
.yaml
对 application.yaml 的引用
ULTIMATE
@()
@NamedQuery
ULTIMATE
@NamedQuery@NamedQuery
PreviousNext
Kotlin 对 Java EE CDI 的支持
ULTIMATE
从 v2021.3 开始,您可以在 Kotlin 文件中使用所有 CDI 检查。 此前,这些检查仅在 Java 文件中可用。 另外,我们还在 Kotlin 文件中添加了 CDI 间距图标。 这将允许您轻松导航到注入点或注入候选项、Bean 标记、处置器方法和事件。
PreviousNext
改进了 UML 类图
ULTIMATE
我们在 Java 和 Kotlin 中加快了 UML 类图的所有进程。 图打开、类别间切换、缩放和撤消/重做功能现在都可以更快完成。 其他显著变化包括新网格、成员高亮显示和快速文档预览弹出窗口。
如果需要控制图外观,请使用上下文菜单,选择 Appearance(外观)。
数据库工具
数据编辑器聚合
ULTIMATE
我们增加了显示一系列单元的 Aggregate(聚合)视图的功能。 这是一项备受期待的功能,可帮助您管理数据并免除编写额外查询的需求! 这使数据编辑器更强大、更易用,也更接近 Excel 和 Google 电子表格。
选择要查看视图的单元范围,然后点击鼠标右键并选择 Show Aggregate View(显示聚合视图)。
映射 DDL 数据源和真实数据源
ULTIMATE
上一版本引入了基于真实数据源生成 DDL 数据源的功能,此版本是其逻辑延续。 现在,此工作流已获得完全支持。 您可以:
- 从真实数据源生成 DDL 数据源:参阅 2021.2 公告。
- 将 DDL 数据源映射到真实数据源。
- 在两个方向上比较和同步。
请注意,DDL 数据源是一种虚拟数据源,其架构基于一组 SQL 脚本。 将这些文件存储在版本控制系统中即可将数据库保留在 VCS 下。
数据配置属性中新增了 DDL mappings(DDL 映射)选项卡,用于定义映射到各 DDL 数据源的真实数据源。
新的数据库差异窗口
ULTIMATE
上下文菜单提供了新的 Database Diff(数据库差异)窗口。 它具有更好的 UI,并且在右侧窗格中清楚显示了执行同步后您将获得的结果。
右侧窗格中的图例显示了不同颜色潜在结果的含义:
- 绿色和斜体:对象将被创建。
- 灰色:对象将被删除。
- 蓝色:对象将被更改。
Script preview(脚本预览)选项卡显示结果脚本,可在新控制台中打开或从此对话框运行。 此脚本的结果是应用变更,使右侧数据库(目标)成为左侧数据库(源)的副本。
除了 Script preview(脚本预览)选项卡,底部窗格中还有两个选项卡:Object Properties Diff(对象属性差异)和 DDL Diff(DDL 差异)。 它们显示源数据库和目标数据库中对象的特定版本之间的差异。
内省级别
ORACLE
ULTIMATE
我们为 Oracle 数据库引入了三个级别的内省:
- 级别 1:所有支持对象的名称及其签名,不包括索引列和私有软件包变量的名称
- 级别 2:除源代码外的所有内容
- 级别 3:所有内容
内省在级别 1 上最快,在级别 3 上最慢。 使用上下文菜单根据需要切换内省级别。
内省级别可针对架构或整个数据库设置。 架构从数据库继承内省级别,但也可独立设置。
内省级别由位于数据源图标旁的药丸状图标表示。 药丸越满,级别就越高。 蓝色图标表示内省级别为直接设置,灰色表示继承。
QA 工具
编辑 Selenium 页面对象
此次重大更新带来了对 Selenium 中 UI 测试自动化的支持,可视化编辑器可以帮助您维护现有的页面对象类。 此前,只能生成新的页面对象类,现在,您可以在没有可视化编辑器的情况下直接更新现有页面对象类。 IntelliJ IDEA 将自动检测页面对象类并在间距面板上以相应图标指示。 点击间距面板,即可打开可视化编辑器并查看待添加到页面对象类的新元素。
测试数据
Test Automation Kit 的最新插件不仅修正了一些小错误,还添加了一个在多个数据生成器设置中使用的实用功能。 现在您可以使用多行定义修改前缀、后缀和分隔符。
PreviousNext
测试管理
测试运行层次结构
我们实现了对多级测试运行的支持。 您现在可以为特定功能域或测试类型创建多个下级测试运行。 每个上级测试运行都会聚合下级测试运行的结果,并提供所有下级相关测试运行的汇总统计信息。
共享步骤
使用“本地 TMS”功能管理 Markdown 文件中的测试用例时,您能够轻松声明测试步骤并在多个测试用例之间共享。 共享步骤被声明为具有唯一数字 ID 的常规测试用例。 您可以在其他测试用例中引用该测试用例,IntelliJ IDEA 将在为自动测试生成预览、测试运行或代码模板时替换这些引用的测试用例步骤。
Kubernetes
改进了 Helm 模板的格式设置
ULTIMATE
您可以格式化 Helm 模板并确保结果正确。 我们已经修正了所有相关问题,让格式设置更加可靠。 要查看改进,转到 Code | Reformat code or Reformat file(代码 | 重新格式化代码或重新格式化文件),或者在 macOS 上按 ⌥⌘L 或在 Windows 和 Linux 上按 Ctrl+Alt+L。
Helm 模板中块元素的高亮显示
ULTIMATE
ifelserangewithdefine
ConfigMap 资源中的语言注入
ULTIMATE
.yaml.json.properties
重复最新命令
ULTIMATE
现在,可以从 Services(服务)工具窗口重新运行最新的 Helm 命令。 您只需要点击右上角的新图标。 例如,运行 helm lint 命令后,点击图标即可重复执行。
Docker
从 Minikube 连接到 Docker
现在可以轻松地从 Minikube 连接到 Docker 守护程序。 在 Preferences/ Settings | Build, Execution, Deployment(偏好设置 / 设置 | 构建、执行、部署)中,选择 Minikube 单选按钮。 在旁边的字段中,IDE 将自动显示检测到的 Minikube 的 docker-daemon 环境以供连接。
更简单的连接过程
双击必要的节点,或者在 macOS 上使用 ⌘Enter 或在 Windows 和 Linux 上使用 Ctrl+Enter 快捷键,即可快速连接到 Docker。 Start container(启动容器)操作也可通过此快捷键调用。
新的 Clean up(清理)操作
新的 Clean up(清理)操作与 prune 终端命令类似。 右键点击 Networks(网络)、Volumes(卷)、Containers(容器)或者 Images(映像)节点,选择 Clean up(清理),随后 IDE 将删除未使用的对象。 您也可以将此操作应用于 Docker 根节点,一键修剪所有多余对象。
PreviousNext
对 Compose V2 的支持
IntelliJ IDEA 支持 Compose V2,这允许您将 Docker Compose 命令作为 docker compose 运行,而不是 docker-compose(带破折号)。
要激活此选项,首先转到 Preferences/Settings | Build, Execution, Deployment | Docker | Tools(偏好设置 / 设置 | 构建、执行、部署 | Docker | 工具),然后勾选 Use Compose V2(使用 Compose V2)复选框。
镜像层
镜像层允许您跟踪应用于镜像的所有命令。 要访问镜像层,首先选择一个镜像,然后转到 Layers(层)选项卡。 在这里选择一个命令后,点击屏幕右侧的 Analyze image for more information(分析镜像以获取更多信息)链接,即可获取应用于各个镜像层的变更的详细信息。
将容器另存为镜像
如果您想保留预配置的容器,可以将其另存为本地镜像,并根据需要推送以远程使用。 转到 Services(服务)工具窗口,右键点击容器,然后选择 Image | Save as a new Image(镜像 | 另存为新镜像)。
PreviousNext
注册表更新
我们对 Docker 注册表进行了多项更改。 首先,IDE 现在将在 Services(服务)工具窗口的单独节点中显示所有可用的注册表。 此前,我们只支持 Docker Hub 注册表。 在 v2021.3 中,我们添加了对 GitLab (registry.gitlab.com) 和 JetBrains Space (<username>.registry.jetbrains.space) 的支持。
您可以在 Services(服务)工具窗口中展开注册表节点,选择必要的镜像,并将其拉取到所需位置。 如果您有多个 Docker 连接,IDE 会询问您从何处拉取镜像。 镜像可被推送到任何添加的注册表,在 Push(推送)对话框中,IDE 会自动检测给定注册表中的可用命名空间,并让您从下拉列表中进行选择。
最后,您还可以对 JetBrains Space、GitLab 和 Docker Hub 注册表中的镜像使用镜像补全。
Podman 支持
IntelliJ IDEA 现在支持以 Podman 替代通常的 Pod、容器和镜像管理方式。 在 IDE 中使用 Podman 之前,您首先需要自行配置一个连接。
在操作系统上安装和配置 Podman 后,转到 Preferences/Settings | Build, Execution, Deployment | Docker(偏好设置 / 设置 | 构建、执行、部署 | Docker),选择 TCP socket (TCP 套接字)单选按钮,填写必填字段,即可完成连接。
Space 集成
PreviousNext
从 IDE 创建合并请求和代码审查
您现在可以在 Space 中为项目创建合并请求和代码审查。 您有 2 种选择:
+
有关详情,请参阅此博文或查看下方 gif。
将文件标记为已查看
执行代码审查时尚未修改的文件都将标有蓝点,蓝点会在您打开文件后消失。 这样可以避免错过重要的变更。 如果要稍后返回变更,可以从上下文菜单中选择 Mark as Not Viewed(标记为未查看)。 此功能也适用于 GitHub 拉取请求。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://daima100.com/post/616.html