idea插件开发资料汇总

idea插件开发资料汇总

一、idea插件开发资料库

IDEA Plugin开发资料库

二、插件推荐

1、注释显示插件

2、自动生成转换方法插件

三、自动转换方法插件开发基础

IDEA插件开发其实不难,最难的可能在于资料相对比较少,开发者也相对比较少。根据IDEA Plugin开发资料库Sheet页资料库中的资料基本可以完成插件的开发,接下来以比较基础的自动生成转换方法插件来讲解一下最基础的插件开发。

1、创建项目

如果没有Plugin Devkit插件,则先安装该插件。创建项目:路径File->New->Project->IDE Plugin
在这里插入图片描述
在这里插入图片描述

2、项目结构

|--build.gradle.kts
|--gradle.properties
|--gradlew
|--gradlew.bat
|--settings.gradle.kts
|--src
|---main
|----java
|-----com.styzf.autogendo
|--------action
|---------ChangeOverSelectorAction.java
|--------constant
|---------Constant.java
|--------dialog
|---------ChangeOverSelectorDialog.form
|---------ChangeOverSelectorDialog.java
|---------DummyFrame.java
|--------gen
|---------GenSrc2Target.java
|--------setting
|---------GenSettingConfigurable.java
|---------GenSettingsComponent.java
|---------GenSettingsState.java
|--------util
|---------ShowBundle.java
|----kotlin
|----resources
|-----messages
|------Po2DoBundle.properties
|------Po2DoBundle_zh.properties
|-----META-INF
|------plugin.xml
|------pluginIcon.svg

目录说明:

action:主入口Action类

constant:项目中的常量类

dialog:存放对话框ui界面相关代码

gen:主要业务逻辑代码

setting:settings中的配置类代码

util:工具类

resources.messages:多语言配置

META-INF.plugin.xml:配置插件入口等内容

主要的配置文件为plugin.xml,另外还有build.gradle.kts(自行参考gradle配置)

plugin.xml是配置插件入口等内容,主要配置actions

例如需要创建一个右键弹出菜单栏中添加一个action,则新建对应的类,继承AnAction,实现几个抽象方法,添加plugin.xml配置,安装插件后,右键则可以看到添加了对应的action,剩下的主要是在actionPerformed方法中编写对应的业务逻辑。

    <actions>
        <action id="com.styzf.autogendo.action.ChangeOverSelectorAction"
                class="com.styzf.autogendo.action.ChangeOverSelectorAction" 
                text="选择转换类" 
                description="选择转换类">
            <add-to-group group-id="EditorPopupMenu" anchor="last"/>
        </action>
    </actions>

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、ui页面设计

保证插件UI Designer开启,在dialog右键New->Swing UI Designer->GUI Form,创建ChangeOverSelectorDialog对话框,会生成对应的java类和对应的.form文件,form文件可以以拖拉拽的形式进行页面的设计。在对应的ChangeOverSelectorDialog.java文件中则可以编辑对应的ui的业务逻辑代码。

在这里插入图片描述
在这里插入图片描述

4、psi(Program Structure Interface)

psi全称Program Structure Interface,是IntelliJ平台提供的程序结构接口,提供解析文件等相关功能。

相关api可以参考:https://plugins.jetbrains.com/docs/intellij/psi.html

打开Tools->View PSI Structure of Current File,可以查看当前的PSI解析结构

在这里插入图片描述

在这里插入图片描述

5、向其他优秀插件开发者学习

大多数想要实现的功能,其实市面上能找到的大多数插件其实早已经实现,例如全局搜索、代码跳转等,那么其实可以减少自身对于整个api体系的学习,最快的开发速度是研究其他人对于该功能是如何实现的,向优秀的前辈学习。

可以在Tools->Internal Actions->UI->UI Inspector可以查看已经安装的所有插件的ui,包括对应的实现类,分组id等相关内容。也可以在想要学习的ui页面按住ctrl+alt左键,则可以快速定位到其实现类。

另外其他小技巧可以参考:https://juejin.cn/post/7116894175915671589/

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6、代码调试

代码开发完成之后需要进行调试,点击Run Plugin,运行起来即可调试了,idea会自行下载对应的idea,并且启动起来进行调试

在这里插入图片描述

  • 25
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值