IntelliJ IDEA 2026.1 EAP 发布!拥抱 Java 26,Spring Boot 4 深度支持!

大家好,我是 Guide。这是真迅速啊!JetBrains 已经正式发布 IntelliJ IDEA 2026.1 EAP(Early Access Program)首个版本

作为一个面向下一代大版本的抢先体验版,这次 EAP 不仅带来了对最新 Java 语言特性的支持,还在 Spring、Gradle、Maven 等主流框架和构建工具上进行了深度优化,并修复了 600 多个 已知 Bug。

在此之前,IntelliJ IDEA 2025.3.x 系列已经带来了不少改进。本次 2026.1 EAP 的发布,标志着 IDE 对下一代技术栈的全面拥抱。

下面按模块拆解这次版本的几个关键变化。

一、语言特性:Java 26 与模式匹配进化

1.1 Java 26 语言级别支持

IDEA 2026.1 EAP 最引人注目的变化之一,就是新增 Java 26 语言级别支持。这意味着开发者可以提前体验和测试即将在 JDK 26 中正式发布的语言特性。

其中最重要的变化是对 JEP 530 的全面支持——"原始类型在模式、instanceof 和 switch 中的应用(第四预览版)"。

1.2 原始类型模式匹配:从包装类到原生类型的跨越

JEP 530 是 Project Amber(专注于语言演进的 OpenJDK 项目)的重要组成部分。它的核心目标是:让模式匹配支持所有原始类型(primitive types),而不仅仅是包装类。

💡 这意味着什么?

在之前的 Java 版本中,模式匹配主要针对对象类型。当你想要对原始类型(如 intlongdouble)进行模式匹配时,必须先进行自动装箱,这会带来额外的性能开销。

旧写法(受限):

// 只能用包装类做模式匹配
if (obj instanceof Integer i) {
    // 使用 i
}

新写法(JEP 530):

// 原始类型直接参与模式匹配
Object obj = 42L;
if (obj instanceof long l) {
    // l 是原始 long,没有装箱开销
    System.out.println("这是一个 long 值:" + l);
}

更强大的地方在于 switch 表达式的支持

// 原始类型在 switch 中的模式匹配
String formatNumber(Object obj) {
    return switch (obj) {
        case byte b -> "Byte: " + b;
        case short s -> "Short: " + s;
        case int i -> "Int: " + i;
        case long l -> "Long: " + l;
        case float f -> "Float: " + f;
        case double d -> "Double: " + d;
        default -> "Unknown type";
    };
}

核心价值:

  • 性能提升:减少自动装箱/拆箱的开销
  • 代码简洁:不再需要手动拆箱处理
  • 类型安全:编译时就能检查类型转换的合法性

官方 JEP 文档:https://openjdk.org/jeps/530

1.3 其他

  • Bytecode Viewer 同步:字节码查看器现在支持与 Kotlin 文件的编辑器同步 ,并允许从非 Java 文件触发 “Show Bytecode” 。
  • Javadoc 增强:支持在内联 {@return} 标签中使用 {@code} 标签 。
  • 注解折叠改进:提升了 Java 注解的折叠显示效果,并支持在内联的 @return 标签中使用 {@code}

二、Spring 生态:Spring Boot 4 时代的全面适配

Spring 开发者将迎来一次重大更新,特别是对 Spring Boot 4 的进一步深度适配。

2.1 Spring Boot 4 深度支持

Spring Boot 4.0 于 2025 年 11 月正式发布,基于 Spring Framework 7.0,全面支持 Java 25(含虚拟线程优化),是一个里程碑式的大版本更新。其核心变化包括:核心新特性包括:HTTP Service Clients 简化远程调用;原生 API 版本管理;全面采用 JSpecify 空安全体系(默认非空,编译期防 NPE);关键依赖升级至 Jackson 3.0、Tomcat 11、Hibernate 7.1 等;支持 Gradle 9;Redis 静态主从配置;移除 Undertow。

IDEA 2026.1 EAP 对 Spring Boot 4 的适配包括:

  • 新增条件注解:支持 @ConditionalOnEnabledHealthIndicatorMailSenderConditionEmbeddedDatabaseCondition 以及 PooledDataSourceCondition
  • 配置类迁移适配:针对 Spring Boot 4 中移动的配置类(如 Caching 、Thymeleaf 、WebMvc 、FreeMarker 和 Mustache )提供了全面的识别支持。

2.2 Spring Data JDBC 增强

数据库操作层面也有显著改进:

  • 序列支持:新增对数据库序列(Sequences)的支持 ,并包含针对无名序列的检查项 。
  • Kotlin 协程支持:在 Spring Web 中支持 Coroutines 路由的 Kotlin DSL 。
  • 嵌入式前缀:支持在结构中为嵌入对象(Embedded)添加前缀 。

💡 实际价值:

Spring Data JDBC 的这些改进,让开发者在处理复杂数据库映射时更加得心应手,特别是对于需要精细控制数据库序列的场景。

2.3 调试器(Spring Debugger)稳定性提升

调试体验的稳定性提升是本次更新的另一个亮点:

  • 事务节点修复:修复了在没有活动事务时事务节点依然残留的问题 。
  • 远程调试增强:解决了通过 “Attach Debugger...” 链接连接远程进程时 Spring Debugger 不可用的问题 。
  • 数据连接修复:修复了由于字符转义错误('U')导致 Spring Debugger 无法创建数据库连接的问题 。

实际影响:

对于需要频繁调试 Spring 应用的开发者来说,这些修复意味着调试过程的可预测性和稳定性大幅提升。

三、构建工具现代化:Gradle 9 与 Maven 4

构建系统是项目的核心,IDEA 2026.1 EAP 对 Gradle 和 Maven 的最新版本提供了强力支持。

3.1 Gradle 9 成为测试标准

Gradle 9.3 于近期正式发布,是一个具有破坏性变化但性能显著提升的大版本。

图片

IDEA 2026.1 EAP 的适配:

  • 内部测试已全面切换到 Gradle 9.2.0
  • 开始采用官方的 Gradle Tooling API (TAPI) 9.2.0
  • 正式放弃对老旧的 Gradle 4.5 版本的支持

3.2 Gradle 9 的关键变化

Gradle 9.0 带来了几个开发者必须关注的重大变化:

3.2.1 Java 17+ 强制要求

破坏性变化:

  • Gradle 9.0 要求 JVM 17 或更高才能运行 Gradle Daemon
  • 大多数 Gradle API 现在编译为 JVM 17 字节码
  • Gradle 仍支持编译 Java 6+ 的目标代码

💡 这意味着:
如果你的项目还在使用 Java 8 或 Java 11,升级 Gradle 9 的第一步就是升级构建环境的 JDK 版本

3.2.2 Configuration Cache 优先模式

Gradle 9.0 最重要的性能特性是 Configuration Cache(配置缓存)成为首选执行模式

核心特性:

  • 优雅降级:当插件或任务不支持配置缓存时,Gradle 会自动回退到非缓存模式,而不是构建失败
  • 性能提升:在小模块变更场景下,报告显示有 ~50% 的速度提升
  • 渐进式迁移:允许任务被明确标记为与配置缓存不兼容

示例对比:

// Gradle 8:配置缓存是可选的
tasks.named('compileJava').configure {
    // 需要手动处理配置缓存兼容性
}

// Gradle 9:配置缓存优先,不兼容时自动降级
// 构建会更快,且不会因缓存问题失败

3.2.3 Kotlin DSL 体验升级

build.gradle.kts 文件中,IDEA 现在支持:

  • 直接运行配置按钮:可以通过 UI 按钮直接执行通过 tasks.register { } 注册的任务
  • 更好的代码补全:Kotlin DSL 的编辑体验进一步优化

操作示例:

// build.gradle.kts
tasks.register("myCustomTask") {
    doLast {
        println("执行自定义任务")
    }
}

// IDEA 2026.1 EAP 中:
// - 这个任务会自动出现在运行配置中
// - 可以直接点击绿色按钮运行

3.3 Maven 4 集成

Maven 4 的适配也在同步推进:

  • 内置版本更新:将内置 Maven 4 版本升级至 4.0.0-rc-5
  • 同步优化:修复了 Maven 4.0.0 模型下不支持 <subprojects> 元素导致同步失败的问题 。

Guide 想问问:什么时候 Maven 4 正式版才能来啊?应该快了吧?

Gradle 9 官方文档:https://gradle.org/whats-new/gradle-9/

《SpringAI 智能面试平台+RAG 知识库》配套实战项目教程正在更新,涉及到 Prompt Engineering、大模型集成、RAG(检索增强生成)、高性能对象存储与向量数据库。后续的话,还会同步上 Agent 项目。

内容非常全面,非常适合想要实战 AI 项目或者准备 AI 大模型应用开发岗位面试的朋友,来一张刚写完的3.4w 字+35 道题目的 RAG 面试题总结,大家感受一下(点此链接了解): 星球):

四、开发体验优化:插件与框架改进

除了大型框架和构建工具的支持,IDEA 2026.1 EAP 在日常开发常用的插件和框架上也做了大量改进。

4.1 Lombok 插件增强

Lombok 是 Java 开发中最流行的代码生成插件之一,本次更新带来了:

新增支持:

  • @Accessors(fluent = true) 支持:链式调用风格的 getter/setter 生成
  • Builder 方法解析修复:解决特定情况下 Builder 方法无法正确解析的问题

⚠️ 新增检查:

  • 插件现在会对在非静态内部类上使用 @Slf4j 的错误用法给出编译错误提示

实际影响:

// 现在会被检测为错误用法
class Outer {
    @Slf4j  // ❌ 编译错误:非静态内部类不能使用 @Slf4j
    class Inner {
        // ...
    }
}

// 正确用法
class Outer {
    static class Inner {
        @Slf4j  // ✅ 静态内部类可以使用
        // ...
    }
}

4.2 框架与语言支持

  • Hibernate 修复:解决了 Hibernate 插件错误地要求 Spring 插件作为先决条件的回归问题 。
  • Groovy 5 支持:修复了在 Groovy 5 项目中将接口静态方法误报为错误的问题 。
  • JPA QL 语法:修复了大量 JPA QL/HQL 的语法高亮错误,包括对 RIGHT JOINcoalesce 子查询 的支持。

4.3 Javadoc 转换为 Markdown

IDE 进一步优化了 “Convert to Markdown documentation comment” 功能,修复了转换时吞掉链接换行符 以及列表缩进错误 的问题。

五、性能与稳定性:600+ Bug 修复

除了新功能,本次 EAP 还包含了大量的 Bug 修复和性能优化,涵盖了从核心平台、UI、文件系统到各种语言的方方面面。

5.1 核心平台优化

修复的问题:

  • WSL 环境下 Tomcat 调试:解决了在 WSL(Windows Subsystem for Linux)环境下 Tomcat 调试不工作的问题
  • 远程开发冻结:修复了远程开发中的一些冻结问题

5.2 UI 体验改进

优化项:

  • 编辑器优化:编辑器响应速度和流畅度提升
  • 终端改进:终端体验问题修复
  • 搜索体验:搜索功能的性能和准确性提升

5.3 语言支持全面增强

覆盖语言:

  • Kotlin:IDEA 对 Kotlin 语言的支持持续优化
  • Groovy:Groovy 脚本编辑体验改进
  • JavaScript/TypeScript:前端开发支持增强

六、总结:是否值得升级?

下面是 IntelliJ IDEA 2026.1 EAP 1 带来的关键升级:

6.1 关键升级一览表

特性 说明 适用人群
Java 26 支持 JEP 530 原始类型模式匹配(第四预览) 喜欢尝鲜的开发者
Spring Boot 4 深度适配新条件注解和配置类 Spring 开发者
Gradle 9 配置缓存优先、Java 17+ 要求 构建性能敏感者
Maven 4 内置版本更新至 4.0.0-rc-5 Maven 用户
Lombok 增强 @Accessors(fluent=true) 支持 Lombok 用户
600+ Bug 修复 核心平台、UI、多语言支持 所有用户

6.2 升级建议

如果你正在考虑向 Spring Boot 4 迁移,或者需要使用 Java 26 的预览特性,这个 EAP 版本非常值得尝试。但请注意,由于这是 EAP 1 版本,建议仅在非生产环境中使用,并定期备份你的配置文件。

参考资料

posted on 2026-01-23 15:42  JavaGuide  阅读(146)  评论(1)    收藏  举报

导航