SuperAPI AI 工具集

module-set-pluginization

通用与其它

查看项目

更新于 10-16 06:20

技能介绍

用途:当一组平台模块目前位于聚合 Product DSL ModuleSet(如 essential、essentialMinimal 或 ide.common)中,需要将其变为独立的捆绑插件包装时使用此工作流。

主要能力:创建手写 JPS 包装模块(位于功能模块旁的 plugin/ 目录,含 .iml、resources/META-INF/plugin.xml、plugin-content.yaml),从聚合 ModuleSet 移除已插件化模块,将包装模块加入 DEFAULT_BUNDLED_PLUGINS,重新裁剪内容模块描述符,并重跑代码生成与验证。

必要用法:编辑前先读 product-dsl 规则,参考 community/platform/navbar/plugin/。创建 .iml 后用 bun build/jps-module.mjs register 注册。仅将共享/锚点模块标记 loading="required",不要给 backend/frontend/monolith 加。生成命令:bazel run //platform/buildScripts:plugin-model-tool 与 ./build/jpsModelToBazel.cmd。验证需运行 Pre-TeamCity Canary Suite,并执行 node community/.ai/render-guides.mjs 重渲染技能镜像。

限制:新包装使用 intellij.platform.FEATURE.plugin 命名,不复用旧 com.intellij.moduleSet 前缀;自动生成方式正被淘汰。插件化可能破坏窄测试模块,需从 idea.log 排查缺失包装插件运行时依赖,仅对受影响测试模块加 scope="RUNTIME"。具体收费、价格、平台等信息暂未提供。