我編譯的版本為spring framework 5.x版本溉痢,所用軟件:idea 2019.3.4 ,jdk11,gradle5.6.4缀磕。
期間我經(jīng)歷了四個(gè)gradle版本落君,換了兩個(gè)idea版本,太難了<氲酢U炅搿八毯!記錄一下過(guò)程中注意點(diǎn)
1.代碼源
github地址https://github.com/spring-projects/spring-framework
國(guó)內(nèi)鏡像碼云https://gitee.com/mirrors/Spring-Framework
2.因?yàn)閟pring通過(guò)gradel構(gòu)建的所以先需要配置gradle
gradle下載地址https://gradle.org/releases/
版本不能低于5.6 ,低于5.6會(huì)出現(xiàn) plugin with id 'java-test-fixtures' not found瞄桨;錯(cuò)誤
版本過(guò)低還可能造成不兼容 jdk11以及Caused by: org.gradle.api.internal.tasks.compile.CompilationFailedException: Compilation failed;等問(wèn)題
版本不能高于等于6.0话速,會(huì)出現(xiàn) com.gradle.build-scan 3.2 不支持6.0以及以后的版本
gradle默認(rèn)倉(cāng)庫(kù)太慢可以添加配置,在gradle安裝目錄下的init.d文件夾創(chuàng)建init.gradle文件
allprojects {
repositories {
maven { url 'file:///E:/apache-maven-repository'}#自己的本地maven倉(cāng)庫(kù)地址
mavenLocal()
#gradle-plugin 倉(cāng)庫(kù)用于下載 gradle-enterprise-gradle-plugin 3.2版本jar
maven { name "gradle-plugin" ; url "https://maven.aliyun.com/repository/gradle-plugin"}
maven { name "Alibaba" ; url "https://maven.aliyun.com/repository/public" }
maven { name "Bstek" ; url "http://nexus.bsdn.org/content/groups/public/" }
mavenCentral()
}
buildscript {
repositories {
maven { name "gradle-plugin" ; url "https://maven.aliyun.com/repository/gradle-plugin"}
maven { name "Alibaba" ; url 'https://maven.aliyun.com/repository/public' }
maven { name "Bstek" ; url 'http://nexus.bsdn.org/content/groups/public/' }
maven { name "M2" ; url 'https://plugins.gradle.org/m2/' }
}
}
}
3.gradle版本和版本不兼容,升級(jí)了idea版本
idea下載https://www.jetbrains.com/idea/download/other.html
gradle5.x版本和idea2018.1.3
錯(cuò)誤信息:Receiver class org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierImpl does not define or inherit an implementation of the resolved method abstract getModuleIdentifier()Lorg/gradle/api/artifacts/ModuleIdentifier; of interface org.gradle.api.artifacts.component.ModuleComponentIdentifier
gradle5.x版本和idea2019.3版本
錯(cuò)誤信息:exception during working with external system: java.lang.AssertionError
at org.jetbrains.plugins.gradle.service.project.BaseGradleProjectResolverExtension.createModule(BaseGradleProjectResolverExtension.java:154)
避過(guò)這些坑就可以開(kāi)始學(xué)習(xí)beans了P窘摹2唇弧!3雉铩活合!
參考地址:
Spring源碼項(xiàng)目構(gòu)建
spring源碼分析環(huán)境搭建
gradel版本過(guò)高問(wèn)題