IntelliJ 配置文件plugin.xml

在 IntelliJ IDEA 插件开发中,plugin.xml 是插件的配置文件,它包含了关于插件的所有基本信息、扩展点、依赖关系等。该文件使用 XML 格式进行定义。以下是 plugin.xml 中常见的元素及其用途:

复制代码
<idea-plugin>
    <!-- 插件的基本信息 -->
    <id>com.example.myplugin</id>
    <name>My Plugin</name>
    <description>This is a description of my plugin.</description>
    <vendor>My Vendor</vendor>
    <version>1.0</version>
    <dependencies>
        <!-- 插件的依赖 -->
    </dependencies>

    <!-- 插件的扩展点 -->
    <extensions>
        <!-- 插件注册的扩展 -->
    </extensions>

    <!-- 插件的行动或动作 -->
    <actions>
        <!-- 插件中的动作 -->
    </actions>

    <!-- 插件的工具窗口 -->
    <toolWindows>
        <!-- 注册工具窗口 -->
    </toolWindows>

    <!-- 其他插件相关设置 -->
</idea-plugin>

一、<idea-plugin>

这是整个插件的根元素。所有的插件信息、扩展点、依赖等都需要包含在这个元素内。

复制代码
<idea-plugin>
    <id>com.example.myplugin</id>
    <name>My Plugin</name>
    <description>This is my plugin description</description>
    <vendor>My Company</vendor>
</idea-plugin>

二、基本信息

1、<id>

指定插件的唯一标识符。通常使用反向域名的方式命名,确保唯一性。

2、<name>

插件的名称,显示在插件市场或插件管理器中。

3、<description>

描述插件的功能和用途。此描述会显示在插件的详细信息中。

4、<vendor>

指定插件的开发商或供应商名称。

5、<version>

插件的版本号,遵循语义化版本控制(例如 1.0.0, 2.1.0 等)。

6、<dependencies>

用于声明插件的依赖项。如果你的插件依赖于其他插件或库,你需要在这个元素中声明它们。

复制代码
<dependencies>
    <dependency id="com.intellij.modules.platform" />
</dependencies>

二、<extensions>

在插件中注册扩展点。插件通过这个元素可以扩展 IDEA 的功能,例如菜单、工具窗口、代码检查、项目视图等。

常见子元素<action>, <toolWindow>, <projectViewPane>, <editorTab>, <inspections>, 等

复制代码
<extensions defaultExtensionNs="com.intellij">
    <action id="MyAction" class="com.example.MyAction" text="My Action" description="My custom action">
        <add-to-group group-id="MainToolBar" anchor="last"/>
    </action>
</extensions>
1、codeInsight.lineMarkerProvider

在 IntelliJ IDEA 插件开发中,codeInsight.lineMarkerProvider 用于在代码编辑器中为特定的代码行创建 行标记,比如通过在代码的行旁边显示图标、标记或提供交互式功能。

行标记通常是在代码编辑器的行号区域显示的小图标或指示符。这些标记可以用于多种用途,例如:

  • 显示断点:例如在调试时,行标记可以用于显示设置的断点。
  • 显示代码覆盖率:行标记可以用来显示哪些代码行已被测试覆盖。
  • 标记重要代码元素:例如标记 TODO 注释、警告或其他重要的代码块。
  • 提供交互功能:例如点击行标记执行某些操作。

三、<actions>

定义插件中注册的所有动作(例如,菜单项、工具栏按钮、快捷键等)。

复制代码
<actions>
    <action id="MyAction" class="com.example.MyAction" text="My Action" description="This is a custom action" />
</actions>

四、<toolWindows>

用于注册插件的自定义工具窗口。

复制代码
<toolWindows>
    <toolWindow id="MyToolWindow" factoryClass="com.example.MyToolWindowFactory" anchor="bottom" />
</toolWindows>
相关推荐
叫致寒吧7 分钟前
Tomcat详解
java·tomcat
同学小张1 小时前
【端侧AI 与 C++】1. llama.cpp源码编译与本地运行
开发语言·c++·aigc·llama·agi·ai-native
踢球的打工仔2 小时前
PHP面向对象(7)
android·开发语言·php
S***26754 小时前
基于SpringBoot和Leaflet的行政区划地图掩膜效果实战
java·spring boot·后端
汤姆yu4 小时前
基于python的外卖配送及数据分析系统
开发语言·python·外卖分析
Yue丶越4 小时前
【C语言】字符函数和字符串函数
c语言·开发语言·算法
马剑威(威哥爱编程)4 小时前
鸿蒙6开发视频播放器的屏幕方向适配问题
java·音视频·harmonyos
JIngJaneIL5 小时前
社区互助|社区交易|基于springboot+vue的社区互助交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·社区互助
翔云 OCR API5 小时前
人脸识别API开发者对接代码示例
开发语言·人工智能·python·计算机视觉·ocr
V***u4535 小时前
MS SQL Server partition by 函数实战二 编排考场人员
java·服务器·开发语言