热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ideaplugin(一)之demo搭建

文章目录官网地址创建方式先测试一把报错部分问题答案可在[IssuesJetBrainsgradle-intellij-pluginGitHub](https:github.comJ



文章目录


  • 官网地址
    • 创建方式
    • 先测试一把
    • 报错

  • 部分问题答案可在[Issues · JetBrains/gradle-intellij-plugin · GitHub](https://github.com/JetBrains/gradle-intellij-plugin/issues/)查到
    • 我的配置



官网地址

创建方式

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QZMZiN2R-1668478260238)(C:\Users\Lenovo\AppData\Roaming\Typora\typora-user-images\1668418722668.png)]

完事儿之后先说几个重要的文件

build.gradle.kts:这个需要添加编码设置UTF-8

tasks {
// Set the JVM compatibility versions
withType<JavaCompile> {
sourceCompatibility &#61; "11"
targetCompatibility &#61; "11"
//设置编码
options.encoding &#61; "UTF-8"
}
...
}

plugin.xml&#xff1a;这个自动生成就行&#xff0c;但是需要添加标签&#xff0c;其实最主要的就是这个标签






gradle/gradle-wrapper.properties&#xff1a;这个不需要改&#xff0c;一般形如

distributionBase&#61;GRADLE_USER_HOME
distributionPath&#61;wrapper/dists
# 这里就是下载的gradle版本了
distributionUrl&#61;https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
zipStoreBase&#61;GRADLE_USER_HOME
# 这里会指定下载的路径&#xff0c;这样你就可以去你在gradle设置的路径下去找了&#xff0c;如果未设置&#xff0c;就在C盘那里&#xff0c;Ctrl&#43;alt&#43;S搜索gradle就能看到
zipStorePath&#61;wrapper/dists
# 注意&#xff1a;user gradle from 一定要在IDE勾选&#39;gradle-wrapper.properties&#39; file

先测试一把

public class Test extends AnAction {
&#64;Override
public void actionPerformed(&#64;NotNull AnActionEvent e) {
NotificationGroup notificationGroup &#61; new NotificationGroup("testid", NotificationDisplayType.BALLOON, false);
/**
* content : 通知内容
* type &#xff1a;通知的类型&#xff0c;warning,info,error
*/

Notification notification &#61; notificationGroup.createNotification("测试通知", MessageType.INFO);
Notifications.Bus.notify(notification);
}
}

plugin.xml

<actions>
<action class&#61;"net.canway.Test" text&#61;"ceshi" description&#61;"tongzhi" id&#61;"testid">
<add-to-group group-id&#61;"ToolsMenu" anchor&#61;"first"/>
action>
actions>

直接运行

他就回去下载相应的包以及你在build.gradle.kts指定的idea版本的包version.set("2021.3.3")

同时会打开一个新的idea界面&#xff0c;也就是你指定的版本2021.3.3

精彩的地方就来了

报错

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1i2GjBTi-1668478260240)(C:\Users\Lenovo\AppData\Roaming\Typora\typora-user-images\1668419480114.png)]

这个是gradle版本的问题&#xff0c;怎么解决&#xff1f;得去官网查&#xff0c;但是这个问题可以忽略&#xff0c;我改了task的编码后&#xff0c;这里的错误就没有了&#xff0c;也是神奇。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3f1usQf4-1668478260241)(C:\Users\Lenovo\AppData\Roaming\Typora\typora-user-images\1668419583762.png)]

这个就是编码问题&#xff0c;前面已经说过了&#xff0c;在build.gradle.kts文件中添加options.encoding &#61; "UTF-8"就可以解决了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2ivFOumV-1668478260241)(C:\Users\Lenovo\AppData\Roaming\Typora\typora-user-images\1668419789506.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3VCV1Ro1-1668478260242)(C:\Users\Lenovo\AppData\Roaming\Typora\typora-user-images\1668419956157.png)]

还有一个错误&#xff0c;是没指定JVM参数&#xff0c;导致不能启动&#xff0c;这个没截图

我的配置是-Xmx2048m -Xms2048m

到此&#xff0c;demo结束

部分问题答案可在Issues · JetBrains/gradle-intellij-plugin · GitHub查到

我的配置

PS D:\workdata\idea_plugin_test\plugin3> ./gradlew -version
------------------------------------------------------------
Gradle 7.5.1
------------------------------------------------------------
Build time: 2022-08-05 21:17:56 UTC
Revision: d1daa0cbf1a0103000b71484e1dbfe096e095918
Kotlin: 1.6.21
Groovy: 3.0.10
Ant: Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM: 1.8.0_271 (Oracle Corporation 25.271-b09)
OS: Windows 10 10.0 amd64






推荐阅读
  • Explore how Matterverse is redefining the metaverse experience, creating immersive and meaningful virtual environments that foster genuine connections and economic opportunities. ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • 本文详细介绍了Java中org.w3c.dom.Text类的splitText()方法,通过多个代码示例展示了其实际应用。该方法用于将文本节点在指定位置拆分为两个节点,并保持在文档树中。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文详细探讨了Java中的24种设计模式及其应用,并介绍了七大面向对象设计原则。通过创建型、结构型和行为型模式的分类,帮助开发者更好地理解和应用这些模式,提升代码质量和可维护性。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 本文介绍了如何在C#中启动一个应用程序,并通过枚举窗口来获取其主窗口句柄。当使用Process类启动程序时,我们通常只能获得进程的句柄,而主窗口句柄可能为0。因此,我们需要使用API函数和回调机制来准确获取主窗口句柄。 ... [详细]
  • 2023年京东Android面试真题解析与经验分享
    本文由一位拥有6年Android开发经验的工程师撰写,详细解析了京东面试中常见的技术问题。涵盖引用传递、Handler机制、ListView优化、多线程控制及ANR处理等核心知识点。 ... [详细]
  • 本文介绍了如何通过 Maven 依赖引入 SQLiteJDBC 和 HikariCP 包,从而在 Java 应用中高效地连接和操作 SQLite 数据库。文章提供了详细的代码示例,并解释了每个步骤的实现细节。 ... [详细]
  • 本文介绍如何使用阿里云的fastjson库解析包含时间戳、IP地址和参数等信息的JSON格式文本,并进行数据处理和保存。 ... [详细]
  • 实体映射最强工具类:MapStruct真香 ... [详细]
  • 本题涉及一棵由N个节点组成的树(共有N-1条边),初始时所有节点均为白色。题目要求处理两种操作:一是改变某个节点的颜色(从白变黑或从黑变白);二是查询从根节点到指定节点路径上的第一个黑色节点,若无则输出-1。 ... [详细]
  • Scala 实现 UTF-8 编码属性文件读取与克隆
    本文介绍如何使用 Scala 以 UTF-8 编码方式读取属性文件,并实现属性文件的克隆功能。通过这种方式,可以确保配置文件在多线程环境下的一致性和高效性。 ... [详细]
author-avatar
范婷柏
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有