Ohhnews

分类导航

Jetbrains Blog

JetBrains Air Teams:为团队带来智能体工作流并自动化重复性任务

JetBrains 推出 Air Teams,作为面向智能体开发的团队层,为开发者和 AI 智能体提供共享上下文、环境、工具与指令,覆盖完整开发生命周期。该产品现已面向 JetBrains 商业客户开放,未来将扩展至个人用户。Air Teams 包含四部分:Automations 可按事件或计划自动执行代码审查、问题修复、依赖更新等重复工作;共享云环境让团队一次配置工具、依赖和凭据,供所有任务复用;云任务可在 IDE 或浏览器中启动并持续运行,不占用本地电脑;团队项目统一管理成员、环境、连接器和自动化,并支持角色与项目积分。Automations 和云任务均基于共享环境运行,代码变更通过拉取请求交由工程师审核,团队可保留控制权并查看完整执行记录。
#jetbrains#air teams#智能体开发#自动化#团队协作
$ more
Jetbrains Blog

Rider 2026.2.3 发布:Monitoring 工具窗口新增 AI 性能分析

JetBrains 发布 Rider 2026.2.3,本次更新将 AI 性能分析引入 Monitoring 工具窗口,并修复了 Windows 平台上 AI Agent Setup 小部件的问题。用户可通过 IDE 内置更新、Toolbox App 或官网下载安装。在 Monitoring 工具窗口中,用户可直接让 AI 代理分析应用性能:Monitoring 会在每次运行应用时收集运行时数据,代理据此定位性能瓶颈并将其关联到代码。通过图表上方的 Analyze with AI 操作,可为最近一次会话创建分析请求,确认提示词后即可发送并开始分析;该操作同样适用于 dotTrace 工具窗口 Recent snapshots 标签页中的历史快照。该功能目前仅支持 Windows,需要 dotUltimate 或 All Products Pack 订阅以及 AI Assistant 插件。此外,本次构建修复了 2026.2.2 引入的 AI Agent Setup 小部件在 Windows 显示缩放低于 175% 时点击任务栏图标无法打开的问题。
#rider#jetbrains#ai性能分析#集成开发环境#版本更新
$ more
Jetbrains Blog

Kotlin 2.5.0-Beta1 为 KMP 引入独立编译方案,提升编译一致性与可预测性

JetBrains 介绍 Kotlin 2.5.0-Beta1 为 Kotlin Multiplatform 引入可选的“独立编译”方案。当前 KMP 编译中,IDE 分析有时比编译器更严格,commonMain 或 commonTest 可能意外解析到平台源集声明,导致重载解析、类型推断等行为不一致。独立编译让编译器在编译公共源集时只依据依赖的元数据 KLIB 和公共声明进行解析,从而与 IDE 分析保持一致,并可在公共源集上实现增量编译。该功能为实验性且默认关闭,可在 gradle.properties 中添加 kotlin.kmp.separateCompilation=true 启用。已知问题包括 cinterop 公共化、仅声明单一目标的 KMP 模块暂不受影响等。
#kotlin multiplatform#独立编译#编译器#元数据 klib#增量编译
$ more
InfoQ Java

Java 新闻综述:TornadoVM 7.0、Groovy 6.0 及多个框架与工具版本更新

2026年9月21日当周的Java新闻综述涵盖多项版本动态:TornadoVM 7.0和Groovy 6.0正式发布;GraalVM和Gradle发布点版本;Quarkus与Micronaut GDK发布维护版本;Maven 4.0发布第七个候选版本;Micrometer Metrics和Tracing发布里程碑版本;Open Liberty和Hibernate ORM发布测试版。作者:Michael Redlich。
#java#软件开发#版本发布#开源生态#jvm
$ more
foojay

使用Testcontainers和JUnit测试Kafka消费者恢复契约

Kafka消费者即使通过单元测试,生产环境重投记录时仍可能失败,因为测试通常只验证处理器逻辑而非恢复契约。文章主张先明确定义契约:业务副作用何时算完成、offset何时提交、用什么幂等键防止重复、畸形记录如何处理、失败记录如何留下可查证据。随后用Testcontainers在真实Kafka broker上验证,并给出JUnit 5示例:重复投递时断言消费到两条记录但投影只应用一次;畸形记录应路由至死信主题并携带失败原因、原始主题等上下文;通过在副作用写入后、offset提交前制造崩溃,验证重启后依靠幂等键不产生重复业务效果。文章建议避免Thread.sleep,改用Awaitility等待可观测的业务条件,并强调Testcontainers无法复现生产broker集群、网络与分区规模,其价值在于验证消费者代码是否遵守恢复契约。
#kafka#testcontainers#junit#消费者恢复契约#幂等性
$ more
foojay

后量子密码迁移将给Java代码库带来多少成本?

后量子密码迁移已从研究议题变为明确的时间表:NIST于2024年8月最终确定ML-KEM、ML-DSA和SLH-DSA标准,IR 8547计划在2030年后弃用RSA、ECDSA、(EC)DH等算法,2035年后禁止使用。对多数Java团队而言,难点不在迁移到何种算法,而在于自身代码库的迁移成本有多高、昂贵之处藏在哪里。作者开发了开源静态审计工具pqc-migration-readiness,无需构建和类路径即可读取Java源码,检测量子脆弱的JCA用法,依据具体密钥类型耦合、固定缓冲区、锁定TLS版本等结构性脆弱指标打分,并输出带工程师工时区间的有序迁移计划及JSON、SARIF报告。该工具在27个主流开源Java项目上运行,结果显示迁移成本主要来自具体的密钥类型耦合而非算法调用本身,Apache MINA SSHD、jjwt、WildFly Elytron等估算成本最高。作者也坦承三点局限:工时数字属启发式估算而非经验证预测;通过配置或包装API选择的算法无法识别;经注册表或枚举路由的算法名称会被漏掉,因此结果只是下限,需更多真实迁移数据加以校准。
#后量子密码#java#迁移成本#静态分析#开源工具
$ more
Baeldung

Java每周回顾:第665期

本期Java周刊聚焦JVM性能优化,介绍了JIT编译器的最新改进及Valhalla、Leyden、Panama项目进展。Spring AI推出TypeSafe Jev,用于快速、低成本的结构化决策。JDK 28新增JEP 401值对象预览特性。Quarkus网站改用Quarkus Roq构建,并实现无状态MCP。此外,多个框架发布新版本,包括Hibernate 8.0.0.Beta2、Helidon 27、Quarkus 3.39.5、Ktor 3.6.0、GraalVM社区版等。技术文章方面,Foojay支持Mermaid图表渲染。本周推荐课程:构建你的Agentic Harness。
#java#jit#spring ai#quarkus#jdk
$ more
foojay

AI辅助家谱研究:后续实践与经验分享

本文是AI辅助家谱研究的后续分享。作者回应了此前关于AI可能产生幻觉以及家谱网站来源可靠性的反馈,提出借助GEDCOM的QUAY质量标记区分证据可信度:家谱网站数据设为QUAY 2,官方民事或教区记录设为QUAY 3,通过“信任但验证”的方式确保数据准确。文章还介绍了按网站创建浏览技能、应对不同程度的机器人防护、利用Playwright持久会话自动登录、借助Topola查看器管理图像,以及转录经验的对比,包括Transkribus、kraken和Filae等工具的表现。最后列举了同名祖先、混合记录类型和日期非单调等实际问题。目前该项目已收录超过1200人,跨越13代。
#人工智能#家谱研究#gedcom#数据转录#自动化浏览
$ more
Baeldung

Hibernate中@Find注解详解:按方法命名约定生成仓库实现

本文介绍Hibernate 6.3及以上版本中的@Find注解,用于在仓库接口中按方法查询命名约定自动生成实现类。文章先演示环境搭建,包括引入hibernate-core 7.4.6与Jakarta Data API依赖、在maven-compiler-plugin中配置Hibernate Processor注解处理器,以及创建authors与books示例表与对应实体。随后说明标注@Repository的接口如何被编译期生成实现,并可通过返回EntityManager的方法变体,让实例在Spring等容器中一次创建、重复使用。@Find支持按实体字段过滤结果,返回单个实体或列表;空结果可用Optional或@Nullable处理,多结果则抛出NonUniqueResultException。借助$符号可沿@ManyToOne、@OneToOne关系进行嵌套字段查询。此外还支持@OrderBy静态排序、Order参数动态排序,以及传入PageRequest分页并返回Page对象以获取总元素数与前后页信息。
#hibernate#@find注解#jakarta data#数据持久化#仓库模式
$ more
foojay

一个数据库,两种模型:用 MySQL JSON 双态视图构建 AI 友好的 Java 应用

文章介绍 MySQL JSON 双态视图:它让订单、客户、商品等关系表以 JSON 文档形式读写,读取时由数据库按需组装,写回文档时自动更新、插入或删除对应行。作者用 Java 构建示例,包含 20 个单元测试、31 个 MySQL 集成测试及 3 个本地大模型测试。MySQL 9.7.2 社区版已支持通过视图写入。读操作更简单,但视图会先构建所有订单文档再过滤,大数据量下需检查执行计划。写操作是整体替换而非局部更新,遗漏 items 会删除订单行;etag 可检测并发冲突,但默认可选,作者建议强制要求。文章还比较了 JDBC、JPA、Spring Data JDBC 的查询次数,并接入 Ollama 与 LangChain4j,让本地 AI 助手通过只读工具查询订单。结论:适合表结构良好、多个消费方需要相同文档形状的小型文档场景,不适合大型过滤列表、批量更新或需快照的数据。
#mysql#json双态视图#java#ai助手#关系数据库
$ more