plugins-index.json。用户在 设置 › 插件 › 可用 中浏览、按分类筛选,一键安装。其中有两类插件:
新的官方插件需要先开 issue 提议,它们要么满足通用需求,要么演示 API 的某一部分。如果一个插件需要新的扩展点,扩展点以单独的 pull request 提交到 OpenIDEA 仓库,插件本身则提交到登记仓库。
社区索引如何到达用户
- 你在登记仓库开 pull request,新增或更新插件。
- 登记仓库的 CI 下载插件包、校验 SHA-256、用最新的 OpenIDEA release 运行
openidea-plugin check、用你的发布者公钥验证签名,然后发布它自己的index.json。 - OpenIDEA 的
plugins-index.yml工作流在一小时内把它合并进 release 的plugins-index.json。 - IDE 每天读取一次索引(也可以在 设置 › 插件 的齿轮菜单中点 重新扫描插件 立即读取),并为每个插件提供它能加载的最新版本。
上架插件
1
准备工具和密钥
2
命名、分类并签名
在
plugin.toml 中把插件命名为 <publisher>.<name>,设置 categories,然后构建并签名:3
发布插件包
把
alice.arthas-0.1.0.oiplugin 附加到你仓库的某个 release,并记下它的 SHA-256:4
向登记仓库提交 pull request
第一次需要在 再在
publishers/alice.toml 中添加发布者:plugins/alice.arthas.toml 中添加插件:[[versions]] 表。旧 IDE 还需要的旧版本请保留:每个版本都记录了它所需的插件 API,IDE 会安装它能加载的最新版本。索引对每种 API 要求只保留最新的一个版本。删除插件文件即下架,已安装的副本仍能继续使用。
这些文件格式和规则以登记仓库的 README 为准,规则摘要见 审核规则与安全。
分类
在plugin.toml 中最多设置三个:
不写
categories 时,贡献了主题、图标主题或语言的插件归入对应分类,其他插件归入 other。
图标
在plugin.toml 中设置 icon(以及可选的 icon-dark):不超过 16 KiB 的 SVG,显示在 设置 › 插件 和插件市场中。生成索引时和 IDE 显示前都会净化(去掉脚本、外部引用和 foreignObject)。设置图标需要 engines.openidea = "^1.2"。不设置时使用通用插件图标。