从 0 编写自己的第一款 IDEA 插件!贼好用!
source link: http://mp.weixin.qq.com/s?__biz=MzU2NjIzNDk5NQ%3D%3D&%3Bmid=2247490195&%3Bidx=1&%3Bsn=d4736afddac39d9bb14f7318eb569956
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
点击上方 “ 匠心零度 ” ,选择“ 设为星标 ”
做积极的人,而不是积极废人
来源:木杉的博客http://imushan.com
写Java代码的时候,经常会涉及到重复性的操作,这个时候就会想要是有这样一个插件就好了,如果是大家都会遇到的场景,IDE或许已经提供了,再不然也有可能有人编写了相关的插件。
要是这个操作是你们的编码环境特有的,那就只能自己写工具了。所以这里来学学如何编写IDEA插件,让自己的编程环境更加强大,更好的进行装逼。
开发环境
开发IDEA插件有以下这些依赖:
-
IntelliJ IDEA Community Edition
-
IntelliJ IDEA Community Edition 源码
-
Plugin DevKit 插件
-
IntelliJ Platform SDK
安装IntelliJ IDEA Community Edition
你可能已经安装了Ultimate版本,但是你还是需要安装[IDEA][]的社区版本。因为商业版是闭源的,所以在调试时无法调试核心代码。
下载IntelliJ IDEA Community Edition源码
社区版的安装包里是不包含源码的,所以我们需要手动从github上clone一份:
关于从源码运行IDEA的方法参考 Check Out And Build Community Edition:
http://www.jetbrains.org/intellij/sdk/docs/basics/checkout_and_build_community.html
添加IDEA jdk
虽然不知道原因,但是根据Check Out And Build Community Edition:
http://www.jetbrains.org/intellij/sdk/docs/basics/checkout_and_build_community.html
我们需要建立一个 IDEA jdk
来运行插件:
除非你在Mac上使用官方JDK,否则你需要手动添加 /lib/tools.jar
到classpath中。关注微信公众号:匠心零度,在后台回复:idea,可以获取我整最新 IDEA 教程,都是干货。
配置IntelliJ Platform SDK
打开 File|ProjectStructure
新建一个 IntelliJPlatformSDK
:
Java SDK选择我们刚刚建立的 IDEA jdk
:
然后我们可以把下载的IDEA社区版源码添加到源码路径中,这样在调试时,就可以调试IDEA自身的代码了:
第一个插件
我们来编写一个最简单的插件来学习编写一个插件的完整步骤。
新建工程
选择 IntellJPlatformPlugin
,然后Project SDK指定刚刚新建的plugin sdk:
新建的插件项目:
插件根目录下有两个目录 src
和 resources
。 src
是插件代码目录, resource
是插件资源目录,其中 META-INF/plugin.xml
是插件的描述文件,就像Java web项目的 web.xml
一样。
plugin.xml默认的内容如下:
新建一个Action
1、 继承 AnAction
类,在 actionPerformed
方法中实现插件逻辑 2、 注册action,有两种方式,通过代码注册和通过 plugin.xml
注册
然后我们在 plugin.xml
中注册这个Action:
这里我们新建了一个菜单组,其中text字符串的下划线表示这个字母作为快捷键。这个菜单显示的效果如下:
除了手动新建Action,IDEA还提供了快速新建的方法,在代码目录上点击新建,可以看到Action:
可以在这个面板中填写你要新建的Action信息,IDEA会帮你新建类,还有在plugin.xml中帮你注册:
运行插件
运行插件特别简单,和运行普通Java代码一样,点击运行或者调试的按钮,就会启动一个新的IDEA实例,这个实例中插件是生效的。
点击Text Boxes就可以看到插件的效果了。
END
如果读完觉得有收获的话,欢迎点【好看】,关注【匠心零度】,查阅更多精彩历史!!!
让我“ 好看 ”
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK