Ohhnews

分类导航

foojay

掌控像素:按你的时间表实现原生保真度

Codename One通过静态链接轻量级UI组件到原生应用中,使OS更新不会改变应用界面。文章介绍了新引入的原生参考保真度测试套件,包含iOS 26和Android Material 3的参考应用,通过像素对比确保UI一致性。框架实现了iOS 26的Liquid Glass毛玻璃效果和Material 3浮动按钮等控件的精确渲染,包括触摸驱动的选项卡透镜动画。此外,还提及CSS增强、文本对齐修复、账户安全更新等。这一工作的核心让开发者掌控像素,按自己的计划采用新设计,无需被OS更新左右。
#codename one#原生保真度#像素测试#移动主题#跨平台开发
$ more
Jetbrains Blog

IDE插件生成器——新的开始

统一插件创建入口 随着 IntelliJ IDEA 2026.1 的发布,JetBrains 推出了全新的基于 Web API 的 IDE 插件生成器,取代了旧有的 IDE 内生成器和 IntelliJ Platform Plugin Template。新生成器将两种方式的优点整合到单一入口,降低了维护成本,并提供了更一致、更顺畅的插件创建体验。 旧方案的问题 旧方案存在两套并行的创建方式:IDE 插件生成器(依赖 Plugin DevKit 插件)和 GitHub 模板。两者功能不同(如 IDE 生成器可额外选择依赖,模板则提供 GitHub 集成)、更新不同步,且造成开发者困惑。 新生成器的优势 一致性:模板统一管理,保证生成的插件风格一致。 模板实时更新:无需升级 Plugin DevKit 即可获取最新模板。 统一工作流:可从 IDE(2026.1+)或网站(plugins.jetbrains.com/generator)访问。 功能融合:支持依赖选择和 GitHub 集成(含工作流、issue 模板、Dependabot 配置)。 未来计划 JetBrains 计划逐步添加 UI 集成测试、Qodana 配置等新特性。
#jetbrains#intellij idea#插件生成器#plugin devkit#开发工具
$ more
InfoQ Java

自构建代理:LangChain4j实验

该实验使用LLM代码助手基于LangChain4j文档自主设计了一个多代理编码系统,能编写、测试和调试代码。比较了主管模式和工作流模式:工作流模式因消除LLM协调开销而快三倍。使用gpt-5-mini成功修复所有bug并通过测试,而旧模型陷入工具调用循环。MonitoredAgent接口可用于监控。结论:工作流模式适合速度和效率,主管模式适合灵活性和自主性。
#langchain4j#多代理系统#代码修复#工作流模式#主管模式
$ more
Jetbrains Blog

MPS 2025.3.1、2025.2.3和2025.1.3错误修复版本发布

JetBrains 发布了 MPS 多个版本的错误修复更新,包括 2025.3.1、2025.2.3 和 2025.1.3。重要修复: MPS-38409:新的只读检查器样式现在正确应用于检查器中的所有编辑器单元格。 MPS-37407:macOS 上的帮助菜单显示高度和间距问题已修复。
#mps#错误修复#版本更新#jetbrains
$ more
DZone Java

使用Quarkus Agent MCP构建实时感知的AI编码助手

标准AI代码生成工具擅长编写独立代码片段,但在理解运行中应用状态时存在局限。Model Context Protocol (MCP)通过标准化AI与本地工具的交互填补了这一空白。Quarkus提供的独立quarkus-agent-mcp服务器作为始终可用的进程运行,管理quarkus dev会话作为子进程,即使应用崩溃也能存活,允许AI检查编译器输出、诊断错误并执行修复。核心能力包括项目脚手架、生命周期控制、Dev MCP代理和语义文档搜索。通过JBang可快速启动。该服务器还支持“技能先于代码”范式,允许代理读取自定义技能以遵循团队架构标准。实际场景中,它能自动处理数据库迁移失败等崩溃恢复流程。安全性上,服务器完全在本地运行,不发送代码到第三方。该集成将本地开发体验提升到超越基本代码补全的高度。
#quarkus agent mcp#ai编码助手#模型上下文协议#实时调试#自动故障恢复
$ more
Baeldung

从Java代码生成图表

本文介绍三种从Java代码生成图表的方法以应对AI辅助编码后代码审查困难的问题。静态分析工具(IntelliJ内置图表、PlantUML Parser插件、Java2PlantUML)直接从源码或字节码生成类图和依赖图。框架级来源(Spring Modulith、Spring Cloud Stream)利用显式声明的模块边界和数据流作为架构图来源。AI代理方法使用轻量级LLM(如Claude Haiku)在CI流水线或pre-commit钩子中从代码差异自动生成图示与改动总结。文章还提及契约文件(OpenAPI、AsyncAPI、Pact)的补充作用。
#图表生成#uml#代码分析#自动化文档#人工智能
$ more
foojay

AI发现漏洞,谁来修补你的EOL Java代码?

近期,AI模型在OpenBSD的TCP栈中发现了一个存在27年的漏洞,FFmpeg的H.264代码中也发现了16年的旧漏洞。Anthropic的Project Glasswing扫描了1000多个开源项目,标记出超过23000个潜在漏洞,其中约530个高危或严重漏洞已披露,但仅有约75个得到修复。维护者(多为志愿者)请求减慢速度,因为修补一个高危漏洞需要约两周,而AI发现只需数秒。英国国家网络安全中心(NCSC)警告组织应准备应对“漏洞补丁浪潮”,建议默认更新并自动化流程。EOL(生命周期结束)版本的软件,如旧版Java、Spring Boot等,由于上游不再提供补丁,风险尤为突出。Spring生态单月发布67个CVE,其中27个高危。攻击者利用漏洞的速度在提升(CrowdStrike报告显示漏洞在公开前被利用的比例上升42%)。合规要求趋严,如英国Cyber Essentials要求14天内修补关键漏洞。文章建议:清查EOL依赖、对活跃上游的组件启用自动更新、对每个EOL组件做出明确决策(迁移、自修补、采购商业支持或隔离接受风险)、压缩响应时间。补丁浪潮已经来临,尤其是对于无人维护的Java代码。
#ai#开源安全#eol java#漏洞修复#安全合规
$ more
DZone Java

告别if-else意大利面条式代码:使用策略模式构建更简洁的Java架构

本文探讨了在Java企业应用中,业务逻辑如何容易退化成耦合紧密的if-else意大利面条式代码,导致难以测试和维护。作者以药房理赔折扣计算为例,展示了传统过程式实现的弊端。随后提出了两种策略模式重构方案:一是利用Java枚举结合函数式接口实现轻量级、无状态的策略路由,通过静态缓存映射优化性能;二是借助Spring依赖注入,将复杂的、有状态的校验逻辑封装为独立的组件策略,并通过动态注册表实现灵活调度。文章还讨论了避免Enum.values()性能陷阱、解耦后易于单元测试、以及单例Bean的线程安全等生产级工程考量。最后通过架构矩阵对比,展示了策略模式在可读性、可扩展性、测试便捷性和性能方面的优势,倡导将业务规则封装为可互换的策略模块,以构建真正面向变化、可扩展的企业级系统。
#策略模式#java#设计模式#代码重构#软件架构
$ more
foojay

Azul Zulu 2026年7月季度更新发布

Azul 发布了 2026 年 7 月 Azul Zulu Builds of OpenJDK 的季度更新,覆盖 Java 26、25、21、17、11、8、7 和 6 版本。本次更新提供关键补丁更新 (CPU) 和补丁集更新 (PSU) 两种版本,修复了 18 个 CVE(其中 4 个为高危)。主要变化包括:Zulu 8 移除 Lucida Monotype 字体;CRS 代理退役,由 Azul Intelligence Cloud 代理替代;Java 25 向后移植后量子混合密钥交换 (JEP 527);新增证书吊销列表大小限制属性;支持 Ubuntu 26.04 和 SLES 15,放弃 CoreOS;CRaC 新增自动检查点功能并移除旧选项。建议团队尽快测试并部署 CPU 更新以修复安全漏洞,后续再迁移至 PSU 版本。
#azul zulu#openjdk#季度更新#安全补丁#java版本
$ more
Jetbrains Blog

RustRover 2026.2 支持 Axum:更快构建 Web 后端

RustRover 2026.2 版本新增对 Axum 框架的原生支持。Axum 是 Rust 生态中最流行的 Web 框架之一,基于 Tokio,具有无宏路由、提取器和 Tower 中间件等特性。新版本 IDE 提供路由导航、HTTP 方法内联提示、端点间跳转以及 Reqwest 调用生成功能,显著提升开发效率。Axum 已被 crates.io、Cloudflare Workers、Lichess 等生产环境广泛采用。
#rustrover#axum#rust#web后端开发#路由导航
$ more