服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - 原因分析IDEA导入Spring-kafka项目Gradle编译失败

原因分析IDEA导入Spring-kafka项目Gradle编译失败

2022-08-01 12:26kl Java教程

这篇文章主要为大家介绍分析了IDEA导入Spring-kafka项目Gradle中编译失败原因及解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

前言

最近在弄kafka相关的东东,因为是spring boot工程,所以用到了Spring-kafka,一个包含了kafka-producer和kafka-consumer自动装配的依赖。为了进一步研究spring是如何封装的kafka官方客户端的细节,所以从github上拉到了源码准备研究下,在导入到IDEA中时,因为Spring-kafka工程使用的是Gradle,导入时就编译失败了,导入工程失败。

Spring-kafka地址:https://github.com/spring-projects/spring-kafka

手把手教你如何免费且光荣地使用正版IntelliJ IDEA

最新idea2020注册码永久激活(激活到2100年)

异常信息

?
1
2
3
4
5
6
java.lang.AbstractMethodError
    at org.gradle.api.internal.artifacts.ivyservice.resolutionstrategy.DefaultCachePolicy.mustRefreshModule(DefaultCachePolicy.java:205)
    at org.gradle.api.internal.artifacts.ivyservice.resolutionstrategy.DefaultCachePolicy.mustRefreshModule(DefaultCachePolicy.java:192)
    at org.gradle.api.internal.artifacts.ivyservice.ivyresolve.CachingModuleComponentRepository$LocateInCacheRepositoryAccess.resolveComponentMetaDataFromCache(CachingModuleComponentRepository.java:212)
    at org.gradle.api.internal.artifacts.ivyservice.ivyresolve.CachingModuleComponentRepository$LocateInCacheRepositoryAccess.resolveComponentMetaData(CachingModuleComponentRepository.java:185)
    at org.gradle.api.internal.artifacts.ivyservice.ivyresolve

具体原因

发生这个异常是因为Gradle版本更新导致的,在IDEA的环境下如果不配置本地的Gradle版本,默认会去拉最新的Gradle版本5.x。而5.x很多人反馈有问题,如下github官方issue:

Gradle-issue:https://github.com/gradle/gradle/issues/8088

解决问题

如果说是升级导致的问题,那么我们降低版本就ok了。事实上,截止目前最新的版本是5.4.1,所以我尝试了5.x的几个低版本都不行,直到降到4.10.2版本的时候才顺利的编译并导入了项目。

经测试,在Gradle的4.6版本下会抛如下异常,提示找不到xxx.jar的信息:

?
1
Cannot find JAR 'bcprov-jdk15on-1.58.jar' required by module 'gradle-dependency-management' using classpath or distribution directory 'E:\runtime\gradle-4.6'

所以如果你也是编译Spring-kafka项目,直接选择4.10.2版本就ok了

Gradle下载地址:http://services.gradle.org/distributions/

原因分析IDEA导入Spring-kafka项目Gradle编译失败

从上面的地址中找到-bin.zip的包,当然是4.x的版本的。直接解压到本地目录,然后打开IDEA的设置,找到如下箭头所指向的配置

原因分析IDEA导入Spring-kafka项目Gradle编译失败

Gradle home选中自己刚解压的目录即可,提交后会自动触发再次编译

以上就是IDEA导入Spring-kafka项目Gradle编译失败原因的详细内容,更多关于IDEA导入Spring-kafka项目Gradle编译失败的资料请关注服务器之家其它相关文章!

原文链接:http://www.kailing.pub/article/index/arcid/242.html

延伸 · 阅读

精彩推荐