首先,我们需要在Idea中创建一个插件项目。在Idea中选择File->New->Project,然后选择IntelliJ Platform Plugin作为项目类型。按照提示一步步创建项目即可。 2. 添加一个Action 在插件项目中,我们需要添加一个Action来触发生成Java类的功能。在项目中创建一个类,实现com.intellij.openapi.actionSystem.AnAction接口,并重写ac...
我们的Action会自动配置到plugin.xml里,这里我把插件显示位置选在Code 菜单下和右键弹窗里,设置它的快捷键:sheft+command+L image.png 当用户点击时触发一个动作事件,IntelliJ则会回调AnAction类的actionPerformed函数。因此我们只需重写actionPerformed函数即可 publicclassAutoGenerateLogActionextendsAnAction{@Overridepublic...
plugin.xml 配置配置的内容参数的含义可以参考IDE生成Action时的讲解,都是对应的。讲解Action这个类中比较重要的有两个方法:actionPerformed(AnActionEvent e): 当用户点击IDE中对应Action的图标时会触发此方法,也就是说每选中一次触发一次。 update(AnActionEvent e):当IDE中需要展示你的Action图标的时候就会触发一次,...
打开模板的Github地址:https://github.com/JetBrains/intellij-platform-plugin-template。 点击“Use this template”,将项目fork到自己的仓库里,或者直接下载模板代码。 2.2.2 Gradle方式 在new project的时候,选择Gradle->IntelliJ Platform Plugin 2.2 开发插件 IDEA里有一个Intention action(代码推测)功能,快捷键是s...
2.2添加Action 现在需要添加一个Action让使用我们插件的用户可以通过菜单或其他方式点击到插件。 Action主要工作是创建一个Application和MyComponent对象,代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 packagecom.cdai.plugin.rapidg; ...
File --> New --> Project,在弹出的窗口中选择Gradle,然后选择Java(这表明我们使用Java语言开发)和Intellij Platform Plugin,点击Next,然后设置项目的名称和位置,点击Finish完成创建。 3. Action 我们在IntelliJ自定义的插件可以添加到菜单项目(如右键菜单中)或者是放在工具栏中。当用户点击时触发一个动作事件,IntelliJ...
代码语言:javascript 复制 <!--菜单动作--><actions><!--Add your actions here--><action id="FirstPluginActionID"class="com.ruijie.shamee.firstplugin.FirstPluginAction"text="测试插件"description="测试插件描述"><add-to-group group-id="ToolsMenu"anchor="first"/><keyboard-shortcut keymap="$defau...
动作(Action),动作在配置文件中配置,由某个菜单项触发。 图标(Icon),插件使用到的图标。 服务(Service),用于后端运行的某些服务实现。 依赖(Dependencies),插件可能依赖的其他插件、三方包等。 二 开发过程简述 此部分以一个简单插件开发实例进行说明。 1 创建项目 IDEA插件项目开发时,有两种创建方式,一种是IntelliJ...
环境变量没有配置正确。检查下“plugin.xml”中的 <depends>com.intellij.modules.platform</depends> 有没有报错,如果报错,请设置正确的sdk 有用 回复 前端超级小杰: 我应该没有配错,但是这里确实是报错了Cannot resolve plugin 'com.intellij.modules.platform' in dependencies (Reference: Plugin Dependencies) ...
我们先写一个简单的Action类: publicclassTextBoxesextendsAnAction{// 如果通过Java代码来注册,这个构造函数会被调用,传给父类的字符串会被作为菜单项的名称// 如果你通过plugin.xml来注册,可以忽略这个构造函数publicTextBoxes() {// 设置菜单项名称super("Text _Boxes");// 还可以设置菜单项名称,描述,图标/...