Ohhnews

分类导航

foojay

从 Java 21 升级到 Java 25:真正会出问题的地方

文章梳理了 Java 21 到 Java 25 之间七类会导致构建失败、启动失败或行为改变的变更,每项均在 JDK 21.0.7 与 JDK 25.0.3 上实测验证。一是自 JDK 23 起 javac 默认不再自动运行类路径上的注解处理器,编译静默成功却缺少生成的代码,需在 Maven 中显式声明 annotationProcessorPaths 或设置 proc=full。二是安全管理器被 JDK 24 永久禁用,-Djava.security.manager=allow 会导致 JVM 无法启动,Subject.getSubject 也改为抛出异常。三是 Thread.suspend/resume 等方法被移除,旧依赖 JAR 会抛 NoSuchMethodError,catch 无法捕获。四是 COMPAT 区域数据被删除,同一代码的日期格式与解析结果改变。五是 sun.misc.Unsafe 内存访问与 JNI 会打印警告,未来将直接失败,建议用严格开关跑测试。六是 -Xfuture、-Xnoagent 等启动参数会导致 JVM 拒绝启动,-XX:-ZGenerational 被忽略,ZGC 默认转为分代模式。七是 Windows 上 File.delete() 不再删除只读文件,TLS 默认算法更严格。文末给出用 jdeprscan、jdeps、检索启动参数和阅读发行说明等排查清单。
#java#jdk升级#向后兼容#注解处理器#api移除
$ more
InfoQ Java

Java新闻综述:JDK 28相关JEP、Azul Payara、Gatherers4j、Google ADK、Yupiik及Apache Camel漏洞

本周Java新闻综述(2026年10月12日)重点包括:三项面向JDK 28的OpenJDK JEP;Azul Payara 2026年10月版本;Gatherers4j、Yupiik Fusion、Google ADK for Java及Google ADK for Kotlin的点版本发布;Apache Camel修复38个CVE漏洞。作者:Michael Redlich。
#java#jdk 28#apache camel#安全漏洞#开源生态
$ more
InfoQ Java

JDK 28通过JEP 543最终确定结构化并发,结束七轮预览

JDK 28通过JEP 543最终确定了结构化并发,与JDK 27相比没有API变更。使用JDK 27的团队只需移除--enable-preview并重新编译。为JDK 25或26编写的代码需要适应R_X异常类型参数、ExecutionException包装以及抽象timeout() joiner回调。
#jdk 28#结构化并发#jep 543#java#并发编程
$ more
Jetbrains Blog

开发者对AI的情绪与态度变化趋势

根据JetBrains连续三年的开发者调查,开发者对AI的态度发生显著变化。愿意将编写应用逻辑代码委托给AI的开发者比例从2025年的18%跃升至2026年的50%;测试编写从50%升至75%;重构任务从38%升至60%。但代码审查(43%愿意)和调试(54%不愿意)的委托意愿较低。79%的开发者认为雇主将期望开发者熟练使用AI工具,高于2024年的59%。同时,对AI取代工作的担忧加剧:37%认为AI将减少对专业开发者的需求(2024年为28%),近四分之一认为AI最终将完全取代人类开发者(2024年仅8%)。重度使用AI代理的开发者更倾向于认为完全替代可能。
#人工智能#开发者#情绪#任务委派#调查
$ more
Jetbrains Blog

JetBrains .NET Day Online 2026:会议录播现已上线

JetBrains .NET Day Online 2026 于10月7日举行,全部会议录播现已在 YouTube 上线。主题演讲聚焦智能体时代的 .NET 工具,介绍 JetBrains Air 在 Rider 中的演示、面向智能体的调试与重构技能,以及将 dottrace-analyze 技能用于性能分析。其他议题涵盖分布式系统消息模式、C# 拦截器与 Native AOT、AI 开发流程、.NET/NuGet 供应链攻击、模块化单体、.NET 互操作性、SQL MCP Server,以及用 .NET Aspire 和 Azure Container Apps 扩展 Blazor。活动反馈问卷开放至11月8日。
#jetbrains#.net#开发者大会#ai智能体#录播视频
$ more
foojay

Foojay播客第103期:在构建时消除反射——对话Dmitry Moskalyuk与Shai Almog

本期Foojay播客第103期邀请Dmitry Moskalyuk和Shai Almog,讨论后端数据层与跨平台UI框架如何将反射移至构建时,并分析这样做的原因及所需付出的代价。
#foojay#播客#反射#构建时#跨平台ui
$ more
Baeldung

在Spring AI中保护大语言模型输出安全

Baeldung教程介绍如何自定义Spring AI Advisor,在ChatClient将响应返回给用户前检查大语言模型输出。文章指出内置SafeGuardAdvisor只能过滤输入提示,无法阻止模型主动输出遗留API等不希望返回的内容。随后通过实现CallAdvisor接口构建输出守卫,扫描响应中的敏感词并用预设回复替换,同时保留生成元数据。测试覆盖敏感回答替换、正常回答原样返回以及端到端调用场景,并讨论了子串匹配、大小写敏感、词边界和流式响应等局限。
#spring ai#大语言模型#输出安全#内容过滤#java
$ more
Jetbrains Blog

能否把 Maven 编译进神经网络?

研究者将Maven风格构建工具的决策逻辑用受限Python编写并编译为固定权重矩阵,无需训练,通过网络查表和矩阵运算执行,再由桥接层调用javac、JUnit等外部工具。在ZXing 3.5.3上,该神经网络构建器成功完成clean package并运行全部549项测试,生成的JAR与Apache Maven逐字节一致;519个手写构建用例和10000个生成用例也通过。代价是明显更慢:仅决策部分CPU耗时约为Python的28.3倍,含测试的干净构建约为1.49倍,GPU因串行执行反而更差。优化后的v2减少23%网络步骤和10%权重行数,决策与v1一致。它不是完整Maven,也不替代Maven,主要价值在于权重含义已知、可用于检验可解释性工具、作为精确子程序,以及可哈希和重放的决策逻辑。
#maven#神经网络#构建工具#权重编译#模型可解释性
$ more
Baeldung

Java 周报第668期

本期Java周报关注JDK 28的最新进展,并介绍了一项关于行为测试框架的实验:该框架能提升较小模型的可靠性,但对更强模型只会增加成本、不改善结果。内容还讨论了AI智能体参与编程时Java运行时的重要性,以及多篇关于语义搜索、Jakarta EE测试、Java与AI融合、结构化并发、Kotlin在支付系统中的应用等文章。此外,栏目汇总了Hibernate Validator、Micronaut、Apache Camel、Payara等项目的版本更新信息,并推荐了如何编写有效软件设计文档的指南。
#java#jdk 28#ai编程#技术周报#开发工具
$ more
foojay

Pi4J V5.0.0开发中:API大幅精简并新增RISC-V支持

Pi4J 是一个用于树莓派等单板计算机硬件引脚访问的开源 Java 库。文章介绍 V5.0.0 的开发进展:核心 API 大幅清理,平台、提供者和基于名称的 IO 创建等旧机制被移除,Context 更简单,并统一通过 newConfigBuilder() 与 context.create(...) 创建 IO。新版本还支持并行端口、RISC-V、更完善的板卡检测,可在无硬件时回退到模拟实现,并改进 PWM、I2C、SPI 和发布流程。V5.0.0 尚无发布日期,快照构建已自动发布。
#pi4j#java#物联网#risc-v#开源
$ more