Intellij IDEA 插件开发之自建插件仓库

2021-06-08 10:24:33 浏览数 (1)

Intellij IDEA 有一个自己的官方的插件仓库,但是当我们的开发的 Intellij IDEA 的插件不能够对外公开时,我们就需要搭建自己的 Intellij IDEA 的插件仓库。前不久我们也尝试着使用Intellij IDEA自己开发一个插件点击打开链接。

搭建 Intellij IDEA 插件仓库

Intellij IDEA 的官方文档里面有提到怎么去新建一个插件仓库,但是,这部分的文档却不在 Intellij IDEA 插件的开发文档里面,而是在插件相关功能的使用文档里面: https://www.jetbrains.com/help/idea/2016.3/adding-plugins-to-enterprise-repositories.html

这里简单对这个文档进行一个说明,如果需要新建一个插件仓库,非常简单,只需要提供一个 URL,当访问这个 URL 的时候,返回如下的一个 XML 即可:

注:

id  为插件的 ID,需要跟在插件的  plugin.xml  里面的设定的 ID 一致。

url  为插件的 ZIP 包下载的地址。

version  是插件的版本号。

使用 gradle 来构建 intellij IDEA插件

添加 Intellij Plugin  对  Gradle  的支持其实和  Android  差不多, 需要添加官方的插件支持.

1, 在你 Intellij plugin 项目的根目录里执行命令  gradle init 来初始化一个  gradle  工程。

2, 修改  build.gradle 文件,让它能够支持构建 intellij 插件。

3, 添加  intellij build plugins  仓库地址: https://plugins.gradle.org/plugin/org.jetbrains.intellij  官方推荐了两种添加方式, 这里我们采用第二种。

plugins {

id "org.jetbrains.intellij" version "0.1.10"

}

4, 使用 intellij idea 的插件(这和Android添加插件是一样的)

apply plugin: 'Java'

apply plugin: 'idea'

apply plugin: 'org.jetbrains.intellij'

5, 设置运行插件的 intellij 版本以及沙箱地址

intellij {

version = 'IU-163.7342.3' //调试我们插件的版本

sandboxDirectory = project.rootDir.canonicalPath "/.sandbox" //插件生成的临时文件的地址

}

完成以上操作, 我们需要用 Idea 来重新以 gradle 的工程来导入我们的项目,这样就可以支持 gradle 啦。

附上build.gradle的完整配置:

/*

* This build file was auto generated by running the Gradle 'init' task

* by 'darin' at '11/4/16 10:39 AM' with Gradle 2.12

*

* This generated file contains a commented-out sample Java project to get you started.

* For more details take a look at the Java Quickstart chapter in the Gradle

* user guide available at https://docs.gradle.org/2.12/userguide/tutorial_java_projects.html

*/

plugins {

id 'org.jetbrains.intellij' version "0.1.10"

}

apply plugin: 'java'

apply plugin: 'idea'

apply plugin: 'org.jetbrains.intellij'

// In this section you declare where to find the dependencies of your project

repositories {

// Use 'jcenter' for resolving your dependencies.

// You can declare any Maven/Ivy/file repository here.

jcenter()

mavenCentral()

maven {

url "https://raw.github.com/embarkmobile/zxing-android-minimal/mvn-repo/maven-repository/"

}

}

intellij {

version = 'IU-163.7342.3'

plugins = ['JavaScriptLanguage', 'CSS']

sandboxDirectory = project.rootDir.canonicalPath "/.sandbox"

}

sourceSets {

main.java.srcDirs = ['src', 'gen']

main.resources.srcDir 'resources'

test.java.srcDir 'test/src'

test.resources.srcDir 'test/data'

}

// In this section you declare the dependencies for your production and test code

dependencies {

compile fileTree(dir: 'lib', include: ['*.jar'])

// The production code uses the SLF4J logging API at compile time

compile 'org.slf4j:slf4j-api:1.7.18'

// Declare the dependency for your favourite test framework you want to use in your tests.

// TestNG is also supported by the Gradle Test task. Just change the

// testCompile dependency to testCompile 'org.testng:testng:6.8.1' and add

// 'test.useTestNG()' to your build script.

testCompile 'junit:junit:4.12'

compile 'com.google.zxing:core:3.2.1'

compile 'com.google.zxing:javase:2.2'

}

使用 Gradle 来快速发布插件到自建仓库

Jetbrains 官方提供了一个  Gradle Intellij Plugin  来帮助我们构建发布 Intellij IDEA 插件。 对于发布 Intellij IDEA 插件的支持,默认行为是发布到 Jetbrains 的官方的仓库上面去的,不过在最新的 SNAPSHOT 版本中,这个插件提供了一个属性 host 可以设置自定义的仓库,我们可以在自己的 build.gradle 文件里面设置这个 host 属性:

publishPlugin.doFirst {

publishPlugin.host = 'http://ysera.alipay.net:9000/'

}

设置好了之后,就可以直接使用  gradle publishPlugin  来发布 Intellij IDEA 插件了。不过这里需要注意,我们上传的插件需要包含如下信息:

userName :用户名

password :密码

xmlId :插件的 ID,也就是在  plugin.xml  里面定义的 ID。

file :插件的 ZIP 包。

所以到这里,我们自建的插件仓库就可以使用了。

使用IntelliJ IDEA 13搭建Android集成开发环境图文教程 http://www.linuxidc.com/Linux/2015-09/123416.htm

IntelliJ IDEA 12 创建Web项目图文详细教程 http://www.linuxidc.com/Linux/2013-05/84213.htm

用IntelliJ IDEA开发Android程序图文教程 http://www.linuxidc.com/Linux/2013-03/81471.htm

IntelliJ IDEA 12开发haXe NME应用配置指南 http://www.linuxidc.com/Linux/2013-01/77227.htm

IntelliJ IDEA运行Play Framework的test mode http://www.linuxidc.com/Linux/2013-07/87694.htm

Ubuntu 13.04 安装IntelliJ IDEA 12 http://www.linuxidc.com/Linux/2013-11/93014.htm

IntelliJ IDEA 12创建Maven管理的Java Web项目(图解) http://www.linuxidc.com/Linux/2014-04/99687p2.htm

IntelliJ IDEA 常用快捷键列表及技巧大全  http://www.linuxidc.com/Linux/2015-04/116398.htm 

在 Ubuntu Linux 上安装 IntelliJ IDEA  http://www.linuxidc.com/Linux/2016-12/137946.htm

0 人点赞