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

推荐订阅源

B
Blog RSS Feed
有赞技术团队
有赞技术团队
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
Y
Y Combinator Blog
Jina AI
Jina AI
G
Google Developers Blog
Last Week in AI
Last Week in AI
博客园 - 叶小钗
H
Hackread – Cybersecurity News, Data Breaches, AI and More
L
LangChain Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
V
Visual Studio Blog
aimingoo的专栏
aimingoo的专栏
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
J
Java Code Geeks
Stack Overflow Blog
Stack Overflow Blog
IT之家
IT之家
The GitHub Blog
The GitHub Blog
D
Docker
量子位
罗磊的独立博客
腾讯CDC

InfoQ - 促进软件开发领域知识与创新的传播

Meta 收购 Manus 这事儿泡汤了 5.5万 Star 开源项目 Ghostty 被迫出走,GitHub 正在终结一代技术人的乌托邦 Slack 长时运行多智能体系统的上下文管理方案 从 T+1 到分钟级:金城银行基于 Apache Doris 构建高可靠、强一致的实时数据平台 谷歌云推出 Agents CLI,简化 AI 智能体开发全流程 Claude官方击穿高薪、高学历的安全防线!Anthropic点名10大高危职业,但有群人暂时稳了 亚马逊云科技终止 WorkMail 服务,并将 App Runner 转入维护模式 OPPO小布记忆:全模态碎片化内容的理解与智能整理实践|AICon上海 模力工场038周AI应用周榜:工具在消失,工作流在出现 Akamai CEO Tom Leighton:Agent 时代来临,云基础设施正从“中心化”转向“分布式边缘” 日均数百亿入库背后:从“人肉调度”到K8s弹性架构,度小满金融基于OceanBase重构入库架构实践 百度文库网盘发布GenFlow 4.0:月活用户超1亿,要把网盘变成全端AI工作台 Altman 投的 Agent 终端 Warp 开源了!斩获3.5万star 哪些客户需要拒, 敢让龙虾决定吗?_AI&大模型_InfoQ 中文站_InfoQ精选视频 从开发到生产:为什么越来越多的机器学习团队纷纷迁移到 Snowflake | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 探索多智能体工作流:LangGraph Snowflake Cortex AI | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 腾讯云分布式缓存数据库:AI Agent - 从提示词工程到 Harness 工程 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 基于 Streamlit 为 CSV 数据构建分析智能体 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 AI 智能体:告别文档缺漏 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 构建 AI 驱动的数据管道:深度探讨 Snowflake Openflow 与非结构化数据 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 云端太贵、本地不够聪明,英特尔押注“端云混合AI”:智能体PC会替人完成工作 不到10%的存储投入,可能拖垮90%的GPU投资!IBM把AI Agent塞进存储系统,算清企业最容易忽略的一笔账 Snowpark 上手实战 | BUILD 2025_大数据_王玮_InfoQ精选视频 ClickHouse + Langfuse,构建 Agent 可观测基石 腾讯云分布式缓存数据库:Cluster Proxy 共享连接架构深度解析 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 AI 写代码太烧钱了:Copilot、Claude 一起涨价,不如把程序员请回来? 英特尔发布至强600系列工作站处理器与锐炫Pro B70 GPU,全新AI工作站来了 腾讯云分布式缓存数据库:从 Redis 到 Valkey - 开源社区如何快速创新 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 印奇这次要“从0重做”智驾模型!首谈阶跃和千里双公司布局:中国AI商业闭环要靠车跑出来 从Cursor返聘归来,90后华裔女高管带Claude开启日更模式:token成本比工程师工资低多了!
TamboUI 承诺为使用 Java 构建 TUI 提供更强大的功能
作者:Olimpiu Pop平川 · 2026-06-02 · via InfoQ - 促进软件开发领域知识与创新的传播

针对“让 2026 成为终端侧的 Java 之年”这一号召,首个现代化 Java TUI 库 TamboUI 应运而生。受 Ratatui(据推测是开发 Claude CLI 时使用的库)的启发,它承诺提供从低级终端绘制到高级 API 的全面支持,包括组件和事件处理。目前,该库已发布 0.3.0 版本,并且已经被 Maven 和 Spring 等主要项目采用。

在一月初发表的博文中,Andersen 鼓励 Java 社区使用 Java 而非其他编程语言来构建文本用户界面(TUI)。他坚称,在开发文本用户界面方面,该语言的成熟度和功能使其至少与 Python、Rust 或 Go 一样出色。

Andersen: 如今的不同之处不在于对终端的怀旧,而在于压力。如今的开发者期待快速的反馈、简便的流程,以及能够融入现有工作环境的工具。

Andersen 指出,打包和分发曾是 Java 命令行界面(CLI)的一大障碍,但如今,得益于原生选项和更简化的运行时部署方式,这些方面已经能满足当今开发者对“低门槛”的期待。Java 成熟的库和跨平台可靠性完美契合 CLI 应用场景,这使得使用 Java 而非其他语言来构建新的终端工具成为必然之选。

Bluesky 上一场关于 Claude Code CLI 的讨论激发了新建一个 Java TUI 库的想法。随后,一篇多人合作撰写的博文正式宣布推出 TamboUI 。Champeau 承诺,这款新发布的库将把 Java 生态系统的 UI 构建能力从“原始”水平提升至现代化水平,提供更广泛的功能,更贴近社区需求,并且具备更高层次的能力。它提供的 API 范围将涵盖从低级(在终端上“绘图”这种最基本的特性)到高级(如组件、事件处理、CSS 等)的所有 API。

Champeau:[TamboUI] 为 Java 开发者提供的功能与他们在桌面应用程序(例如 JavaFX)中使用多年的功能相同,并且可在终端环境中实现。

为了进一步了解该库的现状及其开发动机,InfoQ 联系了 Andersen 和 Champeau,请他们发表更多的看法。

InfoQ:为什么 Java 现在适合开发高效的 TUI 了?

Max Rydahl Andersen:分发本应简单直观,用户不需要关心 JAR 文件、类路径或 JVM 参数。命令行工具(CLI)应该像任何原生工具一样,让人感觉可以轻松地安装和运行。像 JReleaser 这样的工具,再结合 JBang ,只要是使用主流的打包生态系统,打包和分发完整的应用程序就会变得轻而易举。这种体验与人们熟悉的 npm/pip/pipx/npx/uvx 非常相似。

InfoQ:要让使用 Java 开发终端用户界面要变得更加友好,还需要做些什么?

Max Rydahl Andersen:从技术角度来看,我们需要现代化的终端 UI 库,具备合理的布局和控件、支持键盘和鼠标操作、可以正确地处理 Unicode、在终端支持的情况下可以显示图片,以及良好的风格设计。

从文化层面来看,将 Java 置于虚构的基座之上,仅将其视为“企业级”或“微服务架构”的专属工具,这种做法并没有什么好处。Java 的绝大多数原生工具,包括编译器、构建工具、依赖管理器和测试工具,都运行在终端环境中。然而,我们却始终未能投入足够的精力来优化这方面的使用体验。

这两个方面都需要改变。

InfoQ:您从其他生态系统中得到了什么启发?

Champeau:我们最初的灵感来源于使用 Rust 编写的 Ratatui。不错,Ratatui 的实现层次仍然比较低,与 Java 开发者习惯的开发方式相比尤其如此。因此,我们很清楚地意识到,我们需要更进一步的抽象。我们借鉴了 Charm 、 Bubbletea 等其他框架的理念,同时也从 Java 桌面生态系统中汲取了灵感,融合了 Swing 和 JavaFX 的设计思想。简而言之,我们的目标是提供 Java 开发者所熟悉的抽象层次,并为现代 Java 提供适配的 API。对我们而言,TamboUI 采用模块化架构同样至关重要,用户可以自由选择所需的抽象层级,从最低层到最高层都可以。我认为,这在 TUI 生态系统中相当独特:其他框架往往自带一个固定的模型,而我们则提供选项,让你在需要时可以构建自己的模型。

InfoQ:那么,Java 适合用于构建命令行界面(CLI)吗?

Champeau:毫无疑问!我想补充一点,如果你担心启动时间或分发问题,我们从一开始就考虑到了这一点:TamboUI 与 GraalVM 完全兼容,这让你能够从 Java 源代码构建原生二进制文件。实际上,你可以发布一个约 10MB 的可执行文件,其中包含所需的一切,能够立即启动,并且内存占用更小。这是我们在将自己与 Go 等其他语言进行比较之前必须解决的最后一个问题。

这款新的 Java TUI 替代方案迅速被采纳,并被集成到 Quarkus 生态系统中用于实现响应式开发控制台,同时被用于驱动 Maveniverse Pilot 的交互式构建日志仪表盘,并创建了基于控制台的 Spring Initializr TUI 。另有一个 Spring 集成的示例介绍了 TamboUI 与 Spring Boot 的集成。此外,该公告在更广泛的社区中也获得了积极的反馈

原文链接:https://www.infoq.com/news/2026/05/tamboui-java-tui/