惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Hacker News - Newest:
Hacker News - Newest: "LLM"
S
SegmentFault 最新的问题
The Cloudflare Blog
T
The Exploit Database - CXSecurity.com
C
CXSECURITY Database RSS Feed - CXSecurity.com
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
P
Privacy & Cybersecurity Law Blog
有赞技术团队
有赞技术团队
www.infosecurity-magazine.com
www.infosecurity-magazine.com
雷峰网
雷峰网
Google DeepMind News
Google DeepMind News
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
Threatpost
The Hacker News
The Hacker News
人人都是产品经理
人人都是产品经理
阮一峰的网络日志
阮一峰的网络日志
大猫的无限游戏
大猫的无限游戏
L
Lohrmann on Cybersecurity
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
W
WeLiveSecurity
T
Threat Research - Cisco Blogs
博客园 - 叶小钗
量子位
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Simon Willison's Weblog
Simon Willison's Weblog
I
Intezer
S
Secure Thoughts
V
V2EX
Apple Machine Learning Research
Apple Machine Learning Research
小众软件
小众软件
酷 壳 – CoolShell
酷 壳 – CoolShell
Microsoft Azure Blog
Microsoft Azure Blog
博客园_首页
Help Net Security
Help Net Security
爱范儿
爱范儿
C
Cybersecurity and Infrastructure Security Agency CISA
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
腾讯CDC
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
C
Check Point Blog
WordPress大学
WordPress大学
Last Week in AI
Last Week in AI
T
Tor Project blog
NISL@THU
NISL@THU
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
I
InfoQ
The Register - Security
The Register - Security
Recent Announcements
Recent Announcements
N
News and Events Feed by Topic
B
Blog RSS Feed

博客园 - 大卫小东(Sheldon)

Rust 推荐使用宏而非普通函数的场景 华为公司发布半导体演进新范式 - “韬(τ)定律”(Tau Law) 霍尔定理和最大流算法 入门 Rudist v0.5.1 发布:AI 驱动的 Redis 客户端,更快、更直观 Rudist 0.4.3 发布:让 AI Agent 替你操作 Redis 集成AI 的 Redis 客户端 Rudist发布新版了 大模型智能体 (agent)简易流程介绍 在Mac安装阿里巴巴新神器copaw GIM 2.0 发布:真正让 AI 提交消息可定制、可控、可项目级优化 postgreSQL 中的自定义操作符 SQL查询中的窗口函数(主要以 PostgreSQL 为例) SQL中的CTE用法初步(Common Table Expression公共表表达式) 公司新来的00后老板让我们把数据库改成PostgreSQL,大家怒了😂 革命你的 Git 提交消息 - GIM 1.8.0 发布了! 使用JMH对远程接口进行压测 写了一个BBP算法的实现库,欢迎讨论 智能生成git提交消息工具 GIM 发布 1.7 版本了 面向 Git 用户的 jujutsu 使用入门 GIM 1.5发布了! 支持Windows系统了 GIM 1.4 发布了 (附使用 mkdocs 快速制作静态站点流程)
如何用Java25编译Java17的项目
大卫小东(Sheldon) · 2025-09-29 · via 博客园 - 大卫小东(Sheldon)

Java25发布了,比24更好用 😄

我大部分的项目是Java17的,该如何用25支持编写和编译呢?


一、指定编译版本

用SDKman 下载一个25的JDK,IDEA会自动识别出来。直接指明就行

image

二、升级Lombok版本

25支持的lombok版本比较新,尽量用最新的,我用的是

        <lombok.version>1.18.42</lombok.version>

三、指明编译插件

只升级了Lombok版本还不够,还要明确使用

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.14.1</version>
                <configuration>
                    <release>17</release>
			<!-- 不要使用 source和target,而是用release标签 -->
                    <annotationProcessors>
                        <annotationProcessor>lombok.launch.AnnotationProcessorHider$AnnotationProcessor</annotationProcessor>
                    </annotationProcessors>
                </configuration>
            </plugin>

这样就能编译正常了,又快又好!


Java 25(JDK 25)是下一个长期支持版本(LTS),相对于 Java 17 有不少新特性和改进。

特性 概述 / 用处 是否成熟 / 风险 备注
Flexible Constructor Bodies(JEP 513) 允许在 super(...)this(...) 调用之前执行代码,只要不读取未初始化字段。这样就可以在构造器里先做校验、预计算逻辑而不用绕开限制。 ✅ 已成为正式特性 对复杂继承关系中的构造逻辑更灵活
Compact Source Files & Instance Main Methods(JEP 512) 对于小型脚本、原型或入门程序,可以省略传统的类声明和静态 main 方法写法。可以写一个“隐式类”,void main()(非 static)也可以被当作程序入口用。 ✅ 正式特性 更方便快速试验、演示、小工具写法
Module Import Declarations(JEP 511) 在源代码里可以写 import module …; 来导入模块,使得使用模块系统时依赖关系更显式。 ✅ 正式特性 对用到 Java 平台模块系统 (JPMS) 的项目更友好
Scoped Values(JEP 506) 一种比 ThreadLocal 更现代、适应虚拟线程场景的机制,用于在一段执行上下文中共享不可变数据。 ✅ 正式特性 特别在并发 / 虚拟线程编程中更有用
性能 / 内存优化 - Compact Object Headers(JEP 519):对象头从 12 字节压缩到 8 字节
- Ahead-of-Time Method Profiling(JEP 515):提前收集 profiling 数据,加速 JVM 热身
- JFR 增强:CPU 时间剖析、方法级追踪、协作采样等
- Generational Shenandoah(JEP 521):支持世代回收
- 移除 32 位 x86 平台支持(JEP 503):精简运行时代码
大多已稳定,少数需显式开启 在大规模应用、高并发场景中可见收益
其它功能 / API - Key Derivation Function API(JEP 510)
- Primitive Types in Patterns(JEP 507,预览)
- 结构化并发(Structured Concurrency,JEP 505 预览)
- PEM Encodings of Cryptographic Objects(JEP 470 预览)
- 其它命令行、启动优化、压缩类指针调整等
部分为预览 / 孵化特性 使用时需考虑 API 稳定性与未来兼容性