美文网首页Intellij Idea 插件教程
【Intellij Idea 插件从入门到深坑】基础的AnAct

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

作者: Android探索之路 | 来源:发表于2017-12-23 22:40 被阅读0次

    简介

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


    基础知识

    环境搭建

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

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

    创建项目、创建SDK

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

    项目结构

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

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

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

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


    入门操作

    action 是什么?

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

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


    借助IDE创建Action

    按照如下步骤进行操作:

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

    参考下图:

    IDE新建Action

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

    配置属性

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

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


    手动创建Action

    按照如下步骤进行操作:

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

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

    具体的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中的对应代码:

     <add-to-group group-id="HelpMenu" anchor="last"/>
    

    然后,重新运行即可~

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

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


    总结

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

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

    相关文章

      网友评论

        本文标题:【Intellij Idea 插件从入门到深坑】基础的AnAct

        本文链接:https://www.haomeiwen.com/subject/seccgxtx.html