`
不爱不见
  • 浏览: 275939 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

idea插件开发(2)

    博客分类:
  • Idea
 
阅读更多
idea的iml的解释

在这里说明下上面的 plugin.xml 中出现的几个名词

id:表示当前插件的唯一id号
name:插件的名称
version:插件的版本号
vendor:填写开发人的邮箱,公司名称
description:插件的描述,如果将插件上传到IDEA的仓库后,在进行下载的时候就会显示该描述
idea-version:表示当前插件所支持的所有Intellij Idea 的版本, 详细信息可以参照这个对应关系
extensions:这里一般会放一些我们自己的扩展的东西,比如新增高亮显示,新增语言支持都是需要在这里进行扩展
actions:新增的Action类需要在这里注册,用于菜单栏扩展
<application-components>
    <component>
      <implementation-class>com.test.Application</implementation-class>
    </component>
  </application-components>

  <project-components>
    <component>
      <implementation-class>com.test.Project</implementation-class>
    </component>
  </project-components>

<module-components>
    <component>
      <implementation-class>com.test.Module</implementation-class>
    </component>
  </module-components>
插件里有三个可选的组建可以创建, 他们分别是Application level components,Project level components,Module level components.

这3个组件的相应实现类需要分别实现ApplicationComponent接口、ProjectComponent接口和ModuleComponent接口,分别需要实现相应的initComponent()和disposeComponent()方法

Application level components 是在 IDE 启动的时候被创建和初始化的.
Project level components 对应的是 IDE 里的每个工程项目 (没有被打开的工程也是会可能会创建 Project 实例的).
Module level components 对应的是 Project 里的每个 Module.
需要注意的是, Application 级别的 initComponent 只会执行一次, Project 和 Module 级别的 init 和 Dispose 函数会根据项目工程的变化而被多次调用
---------------------
作者:喻枭
来源:CSDN
原文:https://blog.csdn.net/ExcellentYuXiao/article/details/80273109
版权声明:本文为博主原创文章,转载请附上博文链接!
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics