idea插件开发报错: ZipException opening “slf4j.jar“: zip END header not found

错误信息

复制代码
E:\idea-workspace\#idea-plugin\JSON2Object\src\main\java\com\hgy\plugin\json2object\GenerateAction.java:1: 错误: 无法访问com.hgy.plugin.json2object
package com.hgy.plugin.json2object;
^
  ZipException opening "slf4j.jar": zip END header not found

错误原因

运行时候包了这个错误, 其实"ZipException opening "slf4j.jar": zip END header not found"这个错误是由于 "无法访问com.hgy.plugin.json2object" 错误导致的, 编译时候就报了无法访问, 所以要找到无法访问的原因

经过一番分析处理发现是插件引入的idea版本问题, 可是是2021.2和jdk11有兼容性问题吧

js 复制代码
intellij {
//    version.set("2021.2") 这个版本有问题
    version.set("2022.1.4") // 升级成这个版本可以正常使用
    type.set("IC") // Target IDE Platform

    plugins.set(listOf(/* Plugin Dependencies */))
}

走的弯路

由于这里使用了com.sun.codemodel.JCodeModel特殊的类, 一直以为是com.sum.*的特殊包不能被解析, 所以各种百度google都找不到任何相关线索, 最后只能控制变量, 把所有的类全部删了, 然后弄了一个简单测试类, 编译竟然也不能通过, 此时问题就很明显了, 之前的判断是错误的, 就是插件项目依赖的组件个版本不兼容问题(jdk,gradle, intellij平台版本, intellij 插件扩展使用的版本), 最容易想到就是 intellij 插件扩展使用的版本版本问题, 升级一下, 果然解决问题

这么多年过去, 初中物理学的控制变量法依然非常受用, 但是有时候自己往往自以为是的忽略了这个最可靠有效的分析方法, 导致问题迟迟不能解决, 应该深刻反思, 不能先入为主判断, 如果此路不同, 应该停下反思, 而不是无头的到处找自己以为的答案。

相关推荐
十年Java程序媛1 分钟前
Java 多线程基础与锁机制详解|进程线程、锁升级、synchronized 与 Lock 对比
java·开发语言·spring boot
弯_弯2 分钟前
FDE 的工程能力画像:数据接入、PoC 与可复用资产的落地口径
java·服务器·开发语言
云和数据.ChenGuang1 小时前
print(f“a+b=“,result) print(f“a+b={result}“)区别
java·前端·人工智能·python·深度学习
2601_962885721 小时前
如何用 Python 算最大回撤和回撤恢复期?
java·数据库·python
毕业设计7032 小时前
(免费领源码)SSM董家湾线上点餐系统04682- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
java·redis·mysql·tomcat·maven·mybatis·ssm
Q26433650232 小时前
【有源码】基于SpringBoot+Vue的居民健康体检与慢病干预管理系统-面向智慧医疗的体检预约与健康知识服务平台
java·vue.js·spring boot·mysql·毕业设计·javaweb·课程设计
悠仁さん3 小时前
非类型模板参数的特化与偏特化
java·数据结构·算法
鬼手点金3 小时前
上下文:Agent 的眼睛
java·前端·人工智能·git·深度学习
171320330计算机毕设编程3 小时前
计算机毕业设计 基于Hadoop的新能源汽车发展前景分析 LW PPT
java·大数据·hadoop·python·算法·随机森林·线性回归