自定义maven plugins, 找不到org.slf4j.helpers.MessageForm 问题(ClassNotFoundException)
今天升级了下我的maven, 从3.2.1 升级到 3.3.3
发现,我的自定义 maven 插件(feilong-training-plugin), 运行不了了, 提示
Caused by: java.lang.NoClassDefFoundError: org/slf4j/helpers/MessageFormatter
具体内容, 参见我在maven jira系统中发的issue
地址是: https://issues.apache.org/jira/browse/MNG-5845
经过一番排查, 发现, maven 3.3.3 包里面的 "META-INF/maven/extension.xml"(注:该文件 since 3.3.0)
默认 exported了 两个slf4j package, 遗漏了org.slf4j.helpers.*
org.slf4j.*
org.slf4j.spi.*
因此, 可以手工修改 该文件
文章图片
覆盖原文件, 重新运行 插件, 完美成功
-------
有点饿了,端午节深更半夜的还在摸索技术的人, 伤不起啊~~!!!
【自定义maven plugins, 找不到org.slf4j.helpers.MessageForm 问题(ClassNotFoundException)】
参考:
https://github.com/jcgay/maven-color/issues/10
https://issues.apache.org/jira/browse/MNG-5845
https://issues.apache.org/jira/browse/MNG-5842
推荐阅读
- SpringBoot调用公共模块的自定义注解失效的解决
- python自定义封装带颜色的logging模块
- 列出所有自定义的function和view
- Spring|Spring Boot 自动配置的原理、核心注解以及利用自动配置实现了自定义 Starter 组件
- 自定义MyAdapter
- Android自定义view实现圆环进度条效果
- maven使用tomcat7插件编译jsp出错
- Flutter自定义view|Flutter自定义view —— 闯关进度条
- js保留自定义小数点
- django|django 自定义.save()方法