插件私有仓库
大约 2 分钟
插件私有仓库
上传插件到私有仓库,需要完成3步
- 在你的 https web 服务器 创建一个 updatePlugins.xml,主要内容是所有插件的下载地址
- 上传插件到 https web服务器
- 在idea上配置私有仓库地址,详见文档
提示
可以使用gradle插件 plugin_uploader 来自动搭建私有仓库
updatePlugins.xml 文件详情
私有仓库至少需要一个updatePlugins.xml来描述插件的版本,JetBrains IDEs通过updatePlugins.xml中的id,IDE version和plugin version来定位插件
用户也通过这些属性来选择或者更新插件,也告诉用户插件的下载地址
如果使用该私有仓库的用户的idea版本有多个,那么可能需要多个updatePlugins.xml ,例如IntelliJ IDEA 2018.2 使用updatePlugins-182.xml, IntelliJ IDEA 2018.3使用updatePlugins-183.xml
每一个updatePlugins-*.xml都需要一个唯一的url配置在idea上 详见文档
updatePlugins.xml 文件内容
<?xml version="1.0" encoding="UTF-8"?>
<plugins>
<!--
每一个插件都必须包含以下属性:
- "id" (必须) - 插件的id 必须和插件plugin.xml 中定义的id一样.
- "url" (必须) - 插件的下载地址,必须是HTTPS协议
- "version" (必须) - 插件的版本 必须和插件plugin.xml 中定义的version一样. 如果 plugin.xml 未定义version,默认用的是 build.gradle中的version
-->
<plugin
id="fully.qualified.id.of.this.plugin"
url="https://mycompany.example.com/my_repo/my_plugin.jar"
version="major.minor.update">
<!--
<idea-version> (属性) 必须和 plugin.xml中定义的一样 如果plugin.xml ,默认和 build.gradle中的intellij.version的属性一样
-->
<idea-version since-build="181.3" until-build="191.*"/>
</plugin>
<plugin
id="id.of.different.plugin"
url="https://othercompany.example.com/other_repo/other_plugin.jar"
version="major.minor">
<idea-version since-build="181.3" until-build="191.*"/>
</plugin>
<plugin>
<!-- 其它插件-->
</plugin>
</plugins>
注意
updatePlugins.xm至少要包含一个元素
一个id只能出现一次
拥有多个版本的同一插件,必须分别放入不同的updatePlugins-*.xml 文件中 ,用户的ide会根据自己ide版本找到不同的 updatePlugins-*.xml 文件
updatePlugin.xml 可选属性
<!-- 一般不需要配置,如果想配置,为了避免混淆,这3个属性需要和plugin.xml 定义的属性保持一致-->
<root>
<name>
My Plugin Name
</name>
<description>
My plugin is awesome
</description>
<change-notes>
Added cool feature
</change-notes>
</root>
Loading...