热门标签 | 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






推荐阅读
  • Maven + Spring + MyBatis + MySQL 环境搭建与实例解析
    本文详细介绍如何使用MySQL数据库进行环境搭建,包括创建数据库表并插入示例数据。随后,逐步指导如何配置Maven项目,整合Spring框架与MyBatis,实现高效的数据访问。 ... [详细]
  • Spring Security基础配置详解
    本文详细介绍了Spring Security的基础配置方法,包括如何搭建Maven多模块工程以及具体的安全配置步骤,帮助开发者更好地理解和应用这一强大的安全框架。 ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • 本文探讨了如何通过优化 DOM 操作来提升 JavaScript 的性能,包括使用 `createElement` 函数、动画元素、理解重绘事件及处理鼠标滚动事件等关键主题。 ... [详细]
  • 本文详细介绍了 `org.apache.tinkerpop.gremlin.structure.VertexProperty` 类中的 `key()` 方法,并提供了多个实际应用的代码示例。通过这些示例,读者可以更好地理解该方法在图数据库操作中的具体用途。 ... [详细]
  • Beetl是一款先进的Java模板引擎,以其丰富的功能、直观的语法、卓越的性能和易于维护的特点著称。它不仅适用于高响应需求的大型网站,也适合功能复杂的CMS管理系统,提供了一种全新的模板开发体验。 ... [详细]
  • 一、Advice执行顺序二、Advice在同一个Aspect中三、Advice在不同的Aspect中一、Advice执行顺序如果多个Advice和同一个JointPoint连接& ... [详细]
  • ArcBlock 发布 ABT 节点 1.0.31 版本更新
    2020年11月9日,ArcBlock 区块链基础平台发布了 ABT 节点开发平台的1.0.31版本更新,此次更新带来了多项功能增强与性能优化。 ... [详细]
  • 探讨了在HTML表单中使用元素代替进行表单提交的方法。 ... [详细]
  • JavaScript 跨域解决方案详解
    本文详细介绍了JavaScript在不同域之间进行数据传输或通信的技术,包括使用JSONP、修改document.domain、利用window.name以及HTML5的postMessage方法等跨域解决方案。 ... [详细]
  • ASP.NET 进度条实现详解
    本文介绍了如何在ASP.NET中使用HTML和JavaScript创建一个动态更新的进度条,并通过Default.aspx页面进行展示。 ... [详细]
  • 本文详细介绍了在 Red Hat Linux 系统上安装 GCC 4.4.2 的步骤,包括必要的依赖库的安装及常见问题的解决方法。 ... [详细]
  • 处理Android EditText中数字输入与parseInt方法
    本文探讨了如何在Android应用中从EditText组件安全地获取并解析用户输入的数字,特别是用于设置端口号的情况。通过示例代码和异常处理策略,展示了有效的方法来避免因非法输入导致的应用崩溃。 ... [详细]
  • 本文探讨了如何将个人经历,特别是非传统的职业路径,转化为职业生涯中的优势。通过作者的亲身经历,展示了舞蹈生涯对商业思维的影响。 ... [详细]
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社区 版权所有