插件开发环境配置
IDEA分为社区版(Community Edition)和旗舰版(Ultimate Edition)
- 社区版:完全免费,代码开源,但是缺少一些旗舰版中的高级特性。
- 旗舰版:30天免费,支持全部功能,代码不开源。
开发IDEA的插件推荐使用社区版而不是旗舰版,因为社区版是开源的,在开发插件的时候,有源代码调试会比较方便。
插件开发详细步骤
1、下载IDEA社区版开源代码
2、配置IntelliJ Platform Plugin SDK
IntelliJ Platform Plugin SDK : 开发IntelliJ平台下的插件的SDK, 类似于开发Android应用程序需要Android SDK。IntelliJ Platform Plugin SDK基于JDK之上运行的
1)打开IDEA, Configure -> Project Defaults -> Project Structure
2) 配置JDK。因为Intellij Platform Plugin SDK需要基于JDK 。如图所示
3) 接下来选择Intellij Platform Plugin SDK,按照提示配置,SDK的路径选择/Applications/IntelliJ IDEA 15 CE.app/Contents
4)导入idea源代码.
选中下载好的zip解压。选中文件根目录导入
搭建插件简易工程
1、创建
Create new project -> IntelliJ Platform Plugin -> 输入project name
2、工程结构
|-IdeaPluginDemo
|
|--- src
|
|--- resources
|
|--- META—INF
|
|--- plugin.xml
3、创建一个action
Action是IDEA插件开发中比较基本的概念,插件利用Action来往菜单栏和工具栏添加新的菜单或按钮,Action继承了com.intellij.openapi.actionSystem.AnAction并实现public void actionPerformed(AnActionEvent event)方法,当对应的菜单栏或者工具按钮被点击,则Action被调用。
1) 新建一个Java类ShowLatteDescription继承com.intellij.openapi.actionSystem.AnAction,实现其中的public void actionPerformed(AnActionEvent event)方法:
实现加入一项菜单栏功能。
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.Messages;
public class HelloWorldAction extends AnAction {
@Override
public void actionPerformed(AnActionEvent e) {
Project project = e.getData(PlatformDataKeys.PROJECT);
String title = "标题";
String msg = "2018,起航";
Messages.showMessageDialog(project, msg, title, Messages.getInformationIcon());
}
}
2) plugin.xml 配置
加入action配置
如下。
<action id="HelloWorld" class="HelloWorldAction" text="Say Hello!">
<add-to-group group-id="WindowMenu" anchor="first"/>
</action>
4、run
运行的时候,会启动一个IDEA新的窗口。
在Window菜单栏中加入了我们自定义的“Say Hello!”选项。点击会弹出
5、插件打包和分发
5.1 打包
打开运行插件的IDEA, Preferences -> Plugins列表找到本次开发的插件(按照插件名字查)
插件开发完成,准备打包, 打开开发该插件的IDEA,点击如下图所示来进行build
在项目根目录生成一个和项目同名的jar,这就是一个可以部署的插件包。可供IDEA安装使用。安装插件,可以选择从本地磁盘加载。(在IDEA的插件管理面板,选择Install plugin from disk…来安装,重启以后就生效了。)
5.2 分发
总结
上面演示了第一个插件的搭建过程。可以看下IDEA插件开发文档