前言

用了那么多idea插件,也想自己做一个插件,下面就是入门版本
你不需要先知道所有的概念,先跟着我的步骤做一个小;例子,后面再说原理
相关概念看后面一篇
本次以windos系统为例

开始

1.你得安装一个环境,供idea插件的开发使用

下载地址:
https://www.jetbrains.com/idea/download/index.html#section=windows

选择右边的exe文件下载,然后安装,记住位置

2.打开idea,新建一个idea插件开发的项目,选择SDK为上一步环境的安装路径,如下图

3.有了项目,在src目录上alt+insert,新建一个Component

组件类的代码如下:

import com.intellij.openapi.components.ApplicationComponent;
import com.intellij.openapi.ui.Messages;
import org.jetbrains.annotations.NotNull;public class ZhangsComponent implements ApplicationComponent {public ZhangsComponent() {}@Overridepublic void initComponent() {// TODO: insert component initialization logic here}@Overridepublic void disposeComponent() {// TODO: insert component disposal logic here}@Override@NotNullpublic String getComponentName() {return "ZhangsComponent";}//这个方法是自定义的,后面的action会调用public void helloWorld(){String hello = "这是我的插件!!!";Messages.showMessageDialog(hello,"提示",Messages.getInformationIcon());}
}

4.新建一个action,如下图



action类的代码如下:

import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.application.Application;
import com.intellij.openapi.application.ApplicationManager;public class ZhangShuaiAction extends AnAction {@Overridepublic void actionPerformed(AnActionEvent e) {Application application = ApplicationManager.getApplication();ZhangsComponent component = application.getComponent(ZhangsComponent.class);//调用上一步的组件类中的自定义方法component.helloWorld();}
}

5.本地试运行

6.打包项目,做成可让别人安装的插件包

7.安装插件

8.安装完的效果如下:

idea插件开发(01)---最简单的helloworld版,不需要知道原理,先跟我做一个最简单的弹框插件相关推荐

  1. java实现通话_Java做一个最简单的通话程序

    Java做一个最简单的通话程序 作者:未知    文章来源:www.jspcn.net 发布日期:2005年01月19日 Java中的网络编程是一个很重要的部分,也是其编程优越性的地方之一.在Java ...

  2. 用HTML+CSS做一个漂亮简单的个人网页~个人相册介绍个人主页模板(6个页面) ~学生HTML个人网页作业作品~

    用HTML+CSS做一个漂亮简单的个人网页 ~ 个人相册介绍个人主页模板(6个页面) 学生HTML个人网页作业作品 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTML网页作 ...

  3. 用HTML+CSS做一个漂亮简单的个人网页~个人相册介绍个人主页模板(6个页面) ~学生HTML个人网页作业作品~...

    用HTML+CSS做一个漂亮简单的个人网页 ~ 个人相册介绍个人主页模板(6个页面) 学生HTML个人网页作业作品 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTML网页作 ...

  4. HTML5用audio标签做一个最简单的音频播放器

    在做系统的时候,要求做一个音频播放器,就在网上查找了一些资料,发现这样的资料还是很千篇一律的,EasyUI框架并没有给我们一个音频播放器的功能,在bootstrap上有,但是也是结合html5来写的, ...

  5. 做一个最简单的上位机

    记录下制作激光雷达和IMU上位机制作过程 初学者可能有很多不足和错误,欢迎指出交流! 准备工作 我安装的是QT5.8,QTcreater 4.1.0.由于在官网下载比较麻烦,所以可以再这个镜像网站上下 ...

  6. 初学者笔记(三):利用python列表做一个最简单的垃圾分类

    系列文章目录 初学者笔记(一):利用python求100的因数 初学者笔记(二):利用python输出一个1-100的奇数列表 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目 ...

  7. 用Python做一个超简单的小游戏(一听就懂)

    前言 有的人可能学过一点Python基础,但不知道干什么好.今天就教大家做一个简单的小游戏 未经允许,禁止转载 文章目录 前言 写它会用到 源码先抛出来 知识讲解 random 介绍 语法 方法参数表 ...

  8. 【Python 局域网控制】——做一个超简单的局域网指令控制电脑

    程序分为两部分,一个是客户端也是被操控的端口,另一个是服务端就是用来操作被操控的端口 点个赞留个关注吧!! 程序很简单,是通过局域网聊天系统改造而成,没有高级的GUI框架,只有简简单单的DOS窗口,这 ...

  9. 用HTML+CSS做一个漂亮简单的个人网页详细解析

    预览地址: https://static-32f9498d-9b46-413f-a441-4d6984c2edb5.bspapp.com/ Documenthttps://static-32f9498 ...

最新文章

  1. 组合计数 ---- Codeforces Round #370 (Div. 2)D. Memory and Scores[dp]
  2. opencv-python 图像最小外接矩形
  3. python代码大全o-Python简单I/O操作示例
  4. MICROSOFT SQL SERVER 2005 SEPTEMPTER CTP下载
  5. 神策沙龙回顾:大数据技术和金融、房产、理财的深度结合
  6. 三十六、 SQL基本语法
  7. 【数据结构】—顺序表的插入、删除、查找操作
  8. mysql业务繁忙时能建索引吗_MySQL DBA面试高频三十问
  9. python 字符串删除重复_leetcode No.1047 删除字符串中的所有相邻重复项
  10. 剑指offer——15.二进制中1的个数
  11. idea maven 删除dependencies_使用IDEA创建Maven工程 创建javase工程
  12. xgboost融合模型:大学助学金精准资助预测(有数据)
  13. 如何将c语言转成汇编语言,如何把汇编语言转换成C语言
  14. opencv人脸检测报错,(-215:Assertion failed)cv::CascadeClassifier::detectMultiScale‘
  15. 在css表格怎么居中对齐,css居中和对齐方法集锦
  16. COMSOL数据导入的案例
  17. 奖学金评审系统java_基于jsp的奖学金评定系统-JavaEE实现奖学金评定系统 - java项目源码...
  18. 前端保留两位有效数字_用js取小数点后两位的一些方法
  19. 如何查看一个IP地址是哪里的
  20. iOS最全的三方库、插件、博客汇总

热门文章

  1. C/C++ scanf 函数中%s 和%c 的简单差别
  2. Shell脚本-自动化部署反向代理、WEB、nfs
  3. Ubuntu安装Gems报错的解决办法
  4. cocos2dx 父元素影响子元素
  5. MFC中实现的画箭头算法 (Arrow in MFC)
  6. (转载)做好一个系统分析师、项目经理75条准则(一)
  7. vue-day03-vue组件化开发
  8. java c 基本类型_java 基本数据类型
  9. Error:collect2:ld returned 1 exit status的其他原因
  10. html表格统计表,jQuery操作表格(table)的常用方法、技巧汇总