赞
踩
springboot版本升级引起的kotlin-stdlib版本冲突问题
真坑人,本人项目升级了下就启动报错,烦人的报错,原因是springboot的版本升级到2.1.6.RELEASE后,idea启动项目,出现报错:The following method did not exist: kotlin.collections.ArraysKt.copyInto([B[BIII)[B…
然后显示出冲突的包错误
jar:file:/org/jetbrains/kotlin/kotlin-stdlib/1.2.71/kotlin-stdlib-1.2.71.jar!/kotlin/collections/ArraysKt.class
搜索了很多答案,试了都不行,具体如下:
1.首先试了下引用新版本1.3.70
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
<version>1.3.70</version>
</dependency>
结果项目中出现两个版本,老版本1.2.71和新版本1.3.70同时出现,然后把新版本换成1.3.72也不行,老版本依然存在;
2.其次使用排除法,通过在com.squareup.okio排除kotlin-stdlib,希望idea会自动清除掉.2.71版本,但情况不容乐观,老版本1.2.71依然存在;
使用<exclusions>排除法
<groupId>com.squareup.okio</groupId>
<artifactId>okio</artifactId>
<version>2.7.0</version>
<exclusions>
<exclusion>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
</exclusion>
</exclusions>
3.最后看到一篇帖子说可能是springboot版本的问题,因此再次升级版本到2.4.6。这次很神奇!老版本1.2.71自然不见了;赶紧编译运行下试试!果然问题解决了。
终于看到了成功的界面!
总结:搜索到的答案与自己的情况千差万别,即便报错信息一模一样,但引起的原因不同,因此搜到的解决方案都失效的情况下,不妨综合考虑下每个答案,把各种解决方案进行融合贯通,说不准就能找到适合自己的答案了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。