您现在的位置是:主页 > news > 通州网站建设是什么/公司网络推广营销
通州网站建设是什么/公司网络推广营销
admin2025/5/18 4:14:07【news】
简介通州网站建设是什么,公司网络推广营销,360建筑网可靠不,企业网站做口碑营销1.前言 Java程序员避免不了使用Spring框架,即使是使用Spring Boot和Spring Cloud技术栈,Spring原理是必须弄懂得,所以就需要编译Spring源码以及调试Spring源码,一探究竟。编译Spring会出现各种问题,大部分问题都有人写…
通州网站建设是什么,公司网络推广营销,360建筑网可靠不,企业网站做口碑营销1.前言 Java程序员避免不了使用Spring框架,即使是使用Spring Boot和Spring Cloud技术栈,Spring原理是必须弄懂得,所以就需要编译Spring源码以及调试Spring源码,一探究竟。编译Spring会出现各种问题,大部分问题都有人写…
1.前言
Java程序员避免不了使用Spring框架,即使是使用Spring Boot和Spring Cloud技术栈,Spring原理是必须弄懂得,所以就需要编译Spring源码以及调试Spring源码,一探究竟。编译Spring会出现各种问题,大部分问题都有人写博文,我这篇主要记录Spring源码编译出现 循环引用报错问题解决方法。Spring源码编译教程此博文不在赘述!
2.现象
编译发现Spring-beans报错,网上大神建议把报错行注释,就会出现循环引用报错,如下:
3.解决方案
(1)检查Kotlin编译环境
发生错误原因是Kotlin版本不匹配,Stack Overflow大神有相关解答,但是解决方案是更换匹配的Kotlin版本,无法解决问题。
需要注意JVM版本,选择1.8。
(2)Spring-beans.gradle 更换如下:
将最后三句:
compileGroovy.dependsOn = compileGroovy.taskDependencies.values - "compileJava"
compileKotlin.dependsOn(compileGroovy)
compileKotlin.classpath += files(compileGroovy.destinationDir)
更换为:
def deps = compileGroovy.taskDependencies.immutableValues + compileGroovy.taskDependencies.mutableValues
compileGroovy.dependsOn = deps - "compileJava"
compileKotlin.dependsOn(compileGroovy)
compileKotlin.classpath += files(compileGroovy.destinationDir)
4.效果
5.总结
我本机是Java12版本,gradle版本是4.9.1,解决上述问题即可进行调试啦,出现其他问题,其他博文都有解答,有问题请留言!