JetBrains MPS 2026.2 早期访问计划正式启动
MPS 2026.2 EAP1 改进了测试报告,增强了查找结果的分组,并带来了更流畅的编辑体验,以及一个更方便维护的基础,用于启动 MPS 和基于 MPS 的产品。此发布使多节点选择更加可预测,并将 MPS 启动配置与 IntelliJ 平台进一步对齐。
除了大量错误修复外,此构建还引入了若干关键改进。
编辑器测试:灵活的结果匹配
当编辑器测试不需要精确匹配预期结果时——例如,子节点的顺序或某个属性的值不相关时——您可以让 MPS 忽略这些差异。
有两种方式可以自定义结果匹配:
- 节点匹配规则: 声明自定义匹配规则。您可以指定哪些包含角色需要比较、忽略或排除,以及哪些属性或引用不应参与比较。
- 逐节点标记: 当这种例外仅适用于单个节点时,可以通过意图菜单直接在结果夹具中的该节点上添加一个标记。
[LOADING...]
无论采用哪种方式,您不关心的部分都不会再导致误报失败——而且当测试真正失败时,消息现在会直接指向相关节点和单元格,因此无需再对原始断言进行排查。
这一改进源于客户的直接需求。它减少了脆弱的编辑器测试和繁琐的夹具维护。
更详细的测试失败消息
编辑器测试失败时——例如错误的选择、编辑器单元格“ID”不匹配,或选择范围有误——现在会准确描述涉及哪个节点和单元格,而不是仅仅报告一个断言失败。失败消息中提到的每个节点都会连同其展示形式、概念名称和节点 ID 一起呈现,这样可以更容易地在结果夹具中定位问题节点,而无需在调试器中重现失败。
[LOADING...]
在“查找用法”结果中支持虚拟包
“查找用法”结果树现在支持按虚拟包分组。启用后,用法结果会嵌套在与每个根节点的虚拟包对应的文件夹节点下,与“项目”面板中显示的结构保持一致。这有助于在包含大量虚拟文件夹的大型模型中定位根节点。
带点的虚拟包名称,例如 com.example.ui,会按每个段扩展一级树,因此“查找用法”中的嵌套结构与“项目”视图中的嵌套虚拟文件夹保持一致。
新的“按虚拟包分组”切换按钮出现在“查找用法”工具栏上,与现有的分组选项(如模块、模型和根节点)并列。它在“查找用法”中默认启用。其他显示用法结果的工具窗口——“模型检查器”、“待办事项”、“依赖关系查看器”和“重构视图”——则保留其常规的默认分组选项。
[LOADING...]
更自然地选择节点列表
在 MPS 编辑器中,使用“向上选择”(Ctrl+Up)可以更轻松地选择模型的更大片段。当光标位于一个节点列表内时——例如某个行为方法或约束中的一串语句——“向上选择”会将该列表识别为一个有意义的编辑单元。
该操作不会直接从某个节点跳到其父节点,而是会首先选中列表中的所有同级节点。下一步再选择父节点。这为选择过程提供了一个直观的中间层级,并让常见操作(如复制并粘贴一组完整语句)更快、更可靠。
当当前选择已经是节点范围时,该功能也同样有效,因此重复执行“向上选择”可以沿着从单个节点到包含它的列表,再到周围结构的路径保持一致。
启动配置与 IntelliJ 平台对齐
MPS 2026.2 更新了启动脚本和产品元数据的组装方式。MPS 构建工具现在将平台提供的引导类路径与 MPS 特定的扩展类路径分开。在 MPS 启动脚本配置中还暴露了额外的 JVM 参数。
这种分离使得 MPS 发行版能够使用相匹配的 IntelliJ 平台构建所定义的引导类路径和 JVM 选项,同时仅添加 MPS 特有的库和设置。因此,平台更新的集成所需的手动维护更少,启动器配置过时的风险也更低。
生成的启动器还会更精确地应用平台访问选项。共享的 --add-opens 选项来自平台元数据,而操作系统特定的包只会添加到相应操作系统的启动器中。这使得 macOS、Linux 和 Windows 上的启动配置保持一致,并有助于防止由过时或过于宽泛的 JVM 参数引起的启动问题。
这些变更共同使 MPS 启动器在底层平台不断演进时更具弹性,并为构建自定义 MPS 发行版的团队提供了更清晰的扩展点。
您可以此处查看已修复问题的完整列表。
您的 JetBrains MPS 团队