【Intellij Idea 插件从入门到深坑】基础的AnAction

简介

本篇博客主要是介绍Intellij Idea 插件的基础环境的搭建,以及简单的入门操作,用于熟悉插件的编写流程,更快的熟悉和适应插件的编写。如有错误,请在留言中指正,谢谢。 系列汇总地址


基础知识

环境搭建

首先为了方便开发,我们采用Intellij Idea 作为我们开发的IDE,可以点此下载。
安装过程比较简单我就不在此赘述了,下面我们讲解下如何设置,让你能够搭建好可以运行的插件系统。

打开Intellij Idea ,然后选择新建项目,然后按照下图操作:

【Intellij Idea 插件从入门到深坑】基础的AnAction_第1张图片
创建项目、创建SDK

然后选择Next ,然后输入你的项目名称,然后选择Finish,最后你的项目结构将如下图所示:

【Intellij Idea 插件从入门到深坑】基础的AnAction_第2张图片
项目结构

我们根据当前的图来简介下Intellij Idea 插件开发项目的目录结构。

  • src 目录,用于存储我们编写插件的源码

  • resources目录, 用于存储我们所需的资源文件。其中比较重要的是在META-INF 文件下的plugin.xml ,它是插件的配置文件,用于配置插件的各种属性各种依赖,以及注册后续将接触到的ActionInspection等,所以此文件很重要!!!

通过上面的几个简单的步骤就可以搭建完成我们的开发环境了,下面我们编写个简单的例子来熟悉下如何进行插件的开发。


入门操作

action 是什么?

如果我上来就开始写代码你可能处于懵逼状态,好,我们先讲解下定义。
定义:用于描述一个动作、行为,可以通过快捷键、点选的方式进行触发。

下面我们将讲解两种方式去创建Action


借助IDE创建Action

按照如下步骤进行操作:

  1. 在Src目录下创建你的包,用于存储代码
  2. 选择你创建的包然后点击右键->New
  3. 然后选择最下方的Plugin Devkit->Action

参考下图:

【Intellij Idea 插件从入门到深坑】基础的AnAction_第3张图片
IDE新建Action

然后需要设置Action的各个属性,可以参考下图:

【Intellij Idea 插件从入门到深坑】基础的AnAction_第4张图片
配置属性

然后点击下一步,你就会发现你的对应包下面就有你设置好的Action的类了。你是否好奇IDE究竟为我们做了什么?还记得说过的比较重要的那个配置文件吗?打开看看吧,你的设置是不是都在里面?是不是恍然大悟了!

下面介绍的创建Action 的方法就是依照此原理进行的。


手动创建Action

按照如下步骤进行操作:

  1. 在Src目录下创建你的包,用于存储代码
  2. 选择你创建的包然后点击右键->New
  3. 然后选择Java Class,设置好你的Action名称点击完成

将你的类继承AnAction,然后重写actionPerformed()方法,如下图所示:

【Intellij Idea 插件从入门到深坑】基础的AnAction_第5张图片
具体的Action类

我们还要配置一下plugin.xml ,将你的Action注册进去。
配置内容,如下图:

plugin.xml 配置

配置的内容参数的含义可以参考IDE生成Action时的讲解,都是对应的。


讲解Action

这个类中比较重要的有两个方法:

  • actionPerformed(AnActionEvent e): 当用户点击IDE中对应Action的图标时会触发此方法,也就是说每选中一次触发一次。
  • update(AnActionEvent e):当IDE中需要展示你的Action图标的时候就会触发一次,当点击时也会触发且在actionPerformed(AnActionEvent e) 之前触发。

实现个小功能

通过上面的介绍我们对Action大致有了一些了解,下面我们来实现一些功能,来更好的学习印证一下。

这个例子应该是很普遍了,这个应该是官网的例子,就以此讲解吧,具体实现就是当点击你对应的Action的时候,弹出一个弹窗,下面我们看下如何实现。

其实代码很简单,我们刚讲解了Action比较重要的就那两个方法,根据需求我们知道actionPerformed(AnActionEvent e) 就可以满足效果,下面我们来编写代码。

 @Override
    public void actionPerformed(AnActionEvent e) {
        Messages.showMessageDialog("这个是我的测试弹窗!", "TestTile", Messages.getWarningIcon());
    }

可以看到代码确实很简单,然后我们点击运行即可,IDE会自动打开新的IDE进程,如果没有直接打开对应的IDE,你需要手动选择打开的Project即可。需要注意的是,Intellij Idea 中使用的Ui 相关的都是基于java 的,所以如果想高度定制,需要一些java ui的基础。

好,我们验证下学习成果,点击自动打开的IDE,上方选择help,查看最下方是不是有你命名的action的名字,然后点击,是否出现弹窗,出现则成功。

如果在help下没看到你的action名字,请按照如下修改plugin.xml中的对应代码:

 

然后,重新运行即可~

此时重新进行点击查看应该就可以看到对应的效果了。

注意:如果有其他情况还请下方留言。


总结

至此已经基本了解了Intellij Idea 的插件开发,是不是感觉还比较简单?后续会有更多更复杂的内容,敬请期待~

学完了内容后,多回顾多思考,继续后续内容。

你可能感兴趣的:(【Intellij Idea 插件从入门到深坑】基础的AnAction)