百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

IntelliJ IDEA 2023.1 发布!新UI、体验优化、Maven导入速度加快

liuian 2025-04-07 15:53 18 浏览

IDEA 官推宣布 IntelliJ IDEA 2023.1 正式发布了。简单看了一下,发现这次的新版本包含了许多改进,进一步优化了用户体验,提高了便捷性。

根据官方介绍:

IntelliJ IDEA 2023.1 针对新的用户界面进行了大量重构,这些改进都是基于收到的宝贵反馈而实现的。官方还实施了性能增强措施,使得 Maven 导入更快,并且在打开项目时 IDE 功能更早地可用。由于后台提交检查,新版本提供了简化的提交流程。IntelliJ IDEA Ultimate 现在支持 Spring Security 匹配器和请求映射导航。

下面对这个版本的一些比较有意思的改进进行详细介绍。

新 UI 增强(测试版)

针对收到的有关 IDE 新用户界面的反馈,IntelliJ IDEA 官方实施了一些更新,以解决最受欢迎的请求。引入了紧凑模式,通过缩小间距和元素提供更加集中的 IDE 外观和感觉。新 UI 现在提供一个选项来垂直分割工具窗口区域,并方便地排列窗口,就像旧 UI 一样。主窗口标题栏中的运行小部件已经重新设计,使其外观不显眼且更易于查看。

在项目打开时更早提供 IDE 功能

IntelliJ IDEA 官方通过在智能模式下执行扫描文件以建立索引的过程来改进了 IDE 启动体验,这样即可使 IDE 的全部功能在启动过程中更早地可用。当打开一个项目时,IntelliJ IDEA 2023.1 会使用上一次与该项目的会话中存在的缓存,并同时查找要建立索引的文件。如果扫描中没有发现任何更改,则 IDE 将准备就绪,消除了之前由于启动时进行索引而导致的延迟。

更快地导入 Maven 项目

官方通过优化依赖解析以及重新设计导入和配置 facets 的过程,显著提高了 IDE 在导入 Maven 项目时的性能。

后台提交检查

官方重新设计了 Git 和 Mercurial 的提交检查行为,以加速整个提交过程。现在,在提交但尚未推送之前会在后台执行检查。

Spring Security 匹配器和请求映射的导航

为了简化查看应用安全规则,IntelliJ IDEA Ultimate 2023.1 提供了从 Spring 控制器到安全匹配器的轻松导航。该导航可以从安全匹配器到控制器以及反向工作。

全 IDE 缩放

在 v2023.1 中,可以完全放大和缩小 IDE,同时增加或缩减所有 UI 元素的大小。从主菜单中,选择 _View | Appearance_(视图 | 外观),调整 IDE 的缩放比例。此外,您可以在 _Settings/Preferences | Keymap | Main Menu | View | Appearance_(设置/偏好设置 | 按键映射 | 主菜单 | 视图 | 外观)中指定调用这些操作的自定义快捷键。

新的 Java 检查

官方为了帮助保持代码整洁和无错误,升级了一些现有的 Java 检查,并添加了新的检查。格式不正确字符串检查现在报告不符合常见 Java 语法的非法时间转换。冗余字符串操作检查现在能够检测到多余的 StringBuilder.toString() 调用,并提供一个快速修复来将它们替换为 contentEquals(),以便您不会创建中间 String 对象。它还报告 String 构造函数调用中不必要的参数,并建议一个快速修复来删除它们。在这篇博客文章中了解更多关于 IntelliJ IDEA 2023.1 其他代码检查改进。

Java 20 支持

继续减少 Java 开发人员认知负荷,IntelliJ IDEA 2023.1 支持最新更新添加到 Java 20 中,包括语言特性模式匹配和记录模式的更改。

改进了 Extract Method(提取方法)重构

官方通过引入选项来升级提取方法重构,即使所选代码片段具有需要返回的多个变量也可以应用该选项。在这些情况下,IDE 首先建议将这些变量封装到一个新记录或 bean 类中,然后执行方法提取。

VM Options(虚拟机选项)字段中的自动补全

自动补全功能以及集成到 _Run/Debug configuration_(运行/调试配置)弹出窗口的 _VM Options_(虚拟机选项)字段中。现在,输入标志的名称时,IDE 会建议可用命令行选项的列表。这适用于 -XX:-X 选项,以及一些未由 IntelliJ IDEA 自动配置的标准选项,如 -ea,但不适用于 -cp–release

Spring Security 6 支持

IntelliJ IDEA Ultimate 2023.1 提供了更新的支持,可以导航到 Spring Security 6 中引入的 API 的 URL 映射和安全角色。

Apache Dubbo 支持

IntelliJ IDEA 实现了一个新的专用插件,集成了 Apache Dubbo,将该框架的功能作为 IntelliJ IDEA 对 Spring 的支持的一部分。

Structure(结构)工具窗口中的 VCS 状态颜色提示

针对 GitHub 改进了代码审查工作流

为了简化在 IDE 中审查代码的过程,重做了 Pull Request(拉取请求)工具窗口。它现在为您打开的每个拉取请求提供一个专用标签页。标签页会立即显示已更改文件的列表,但它提供的信息比先前更少,让您可以更好地专注于当前任务。现在,可以通过一个新增的专属按钮轻松执行拉取请求当前状态下最相关的操作。

相关推荐

Springboot 整合 Websocket 轻松实现IM及时通讯

一、方案实践集成分为三步:添加依赖、增加配置类和消息核心类、前端集成。1.1、添加依赖<dependency><groupId>org.springframework...

SpringBoot扩展——应用Web Socket!

应用WebSocket目前,网络上的即时通信App有很多,如QQ、微信和飞书等,按照以往的技术来说,即时功能通常会采用服务器轮询和Comet技术来解决。HTTP是非持久化、单向的网络协议,在建立连接...

【Spring Boot】WebSocket 的 6 种集成方式

介绍由于前段时间我实现了一个库【SpringCloud】一个配置注解实现WebSocket集群方案以至于我对WebSocket的各种集成方式做了一些研究目前我所了解到的就是下面这些了(就一个破w...

SpringBoot生产级WebSocket集群实践,支持10万连接!

1、问题背景智慧门诊系统旨在从一定程度上解决患者面临的三长一短(挂号、看病、取药时间长,医生问诊时间短)的问题。实现“诊前、诊中、诊后”实时智能一体化,整合完善医院工作流程。围绕门诊看病的各个环节,让...

Spring Boot3 中 WebSocket 实现数据实时通信全解析

各位互联网大厂的开发同仁们,在如今的互联网应用开发中,实时通信功能越来越重要。比如在线聊天、数据推送、实时通知等场景,都离不开高效的实时通信技术。而WebSocket作为一种高效的双向通信协议,在...

Java WebSocket 示例(java nio websocket)

一、环境准备1.依赖配置(Maven)在pom.xml中添加WebSocket依赖:xml<!--SpringBootWebSocket--><dependen...

Spring Boot整合WebSocket:开启实时通信之旅

SpringBoot整合WebSocket:开启实时通信之旅今天咱们来聊聊SpringBoot整合WebSocket这件大事儿。说到实时通信,你是不是第一时间想到QQ、微信这些聊天工具?没错,We...

Spring Boot3 竟能如此轻松整合 WebSocket 技术,你还不知道?

在当今互联网大厂的软件开发领域,实时通信的需求愈发迫切。无论是在线聊天应用、实时数据更新,还是协同办公系统,都离不开高效的实时通信技术支持。而WebSocket作为一种能够实现浏览器与服务器之间持...

Spring Boot集成WebSocket(springboot集成websocket)

一、基础配置依赖引入<dependency><groupId>org.springframework.boot</groupId><artifactId>...

Springboot下的WebSocket开发(springboot websocket server)

今天遇到一个需求,需要对接第三方扫码跳转。一种方案是前端页面轮询后端服务,但是这种空轮询会虚耗资源,实时性比较差而且也不优雅。所以决定使用另一种方案,websocket。以前就知道websocket,...

springboot websocket开发(java spring boot websocket)

maven依赖SpringBoot2.0对WebSocket的支持简直太棒了,直接就有包可以引入<dependency><groupId>org....

Python界面(GUI)编程PyQt5窗体小部件

一、简介在Qt(和大多数用户界面)中,“小部件”是用户可以与之交互的UI组件的名称。用户界面由布置在窗口内的多个小部件组成。Qt带有大量可用的小部件,也允许您创建自己的自定义和自定义小部件。二、小部件...

实战PyQt5: 014-下拉列表框控件QComboBox

QComboBox简介QComboBox下拉列表框,是一个集按钮和下拉列表选项于一体的部件。QComboBox提供了一种向用户呈现选项列表的方式,其占用最小量的屏幕空间。QComboBox中的常用方法...

Python小白逆袭!7天吃透PyQt6,独立开发超酷桌面应用

PythonGUI编程:PyQt6从入门到实战的全面指南在Python的庞大生态系统中,PyQt6作为一款强大的GUI(GraphicalUserInterface,图形用户界面)编程框架,为开...

如何用 PyQt6 打造一个功能完善的 SQLite 数据库管理工具

如何使用PyQt6和qt_material库,打造一个功能完善的SQLite数据库管理工具,轻松管理和查询SQLite数据库。一、目标数据库连接与表管理:支持连接SQLite数据库...