Spring-boot 2.3.x 소스 코드 는 Gradle 컴 파일 과정 에 대한 상세 한 설명 을 바탕 으로 합 니 다.
5432 단어 Spring-boot2.3.xGradle컴 파일
1.git 최신 버 전의 spring Boot 를 위아래 로 당 깁 니 다.
git [email protected]:spring-projects/spring-boot.git,release 버 전 을 다운로드 하 는 것 을 권장 합 니 다.이상 한 오류 가 발생 하지 않 습 니 다.
2.다운로드 원본 수정,
gradle\wrapper 의 프로필
gradle-wrapper.properties
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
#distributionUrl=https\://services.gradle.org/distributions/gradle-6.4-bin.zip
// Gradle gradle gradle
// gradle , , gradle-4.9 , gradle-api plugins , ,
distributionUrl=file:///E:/Gitee_repository/Java_Sources_Code_Study/Spring-Boot-2.3.1/gradle-6.5.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
buildSrc 의 build.gradle
plugins {
id "java-gradle-plugin"
// , ,
//id "io.spring.javaformat" version "${javaFormatVersion}"
id "checkstyle"
}
repositories {
maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter' }
maven { url "https://repo.spring.io/plugins-release" }
mavenCentral()
gradlePluginPortal()
maven { url "https://repo.spring.io/release" }
}
sourceCompatibility = 1.8
targetCompatibility = 1.8
.......
settings.gradle
pluginManagement {
repositories {
maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter' }
maven { url "https://repo.spring.io/plugins-release" }
mavenCentral()
gradlePluginPortal()
}
resolutionStrategy {
eachPlugin {
if (requested.id.id == "io.spring.javaformat") {
useModule "io.spring.javaformat:spring-javaformat-gradle-plugin:${requested.version}"
}
}
}
}
gradle.properties
javaFormatVersion=0.0.22
# , heap
gradlePropertiesProp=gradlePropertiesValue
sysProp=shouldBeOverWrittenBySysProp
systemProp.system=systemValue
org.gradle.caching=false
org.gradle.jvmargs=-Xms2048m -Xmx4096m
org.gradle.parallel=true
org.gradle.daemon=true
org.gradle.configureondemand=true
루트 디 렉 터 리 의 build.gradle
//
buildscript {
repositories {
maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter' }
maven { url "https://repo.spring.io/plugins-release" }
}
}
allprojects {
group "org.springframework.boot"
repositories {
maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter' }
mavenCentral()
if (!version.endsWith('RELEASE')) {
maven { url "https://repo.spring.io/milestone" }
}
if (version.endsWith('BUILD-SNAPSHOT')) {
maven { url "https://repo.spring.io/snapshot" }
}
}
configurations.all {
resolutionStrategy.cacheChangingModulesFor 60, "minutes"
}
}
seetings.gradle
pluginManagement {
repositories {
maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter' }
mavenCentral()
gradlePluginPortal()
maven {
url 'https://repo.spring.io/plugins-release'
}
if (version.endsWith('BUILD-SNAPSHOT')) {
maven { url "https://repo.spring.io/snapshot" }
}
}
resolutionStrategy {
eachPlugin {
if (requested.id.id == "org.jetbrains.kotlin.jvm") {
useVersion "${kotlinVersion}"
}
if (requested.id.id == "org.jetbrains.kotlin.plugin.spring") {
useVersion "${kotlinVersion}"
}
}
}
}
2.아이디어 도입컴 파일 할 때 취 소 를 누 르 면 아이디어 설정
3.컴 파일 시작
이로써 꽃 을 뿌 려 컴 파일 에 성공 하 였 습 니 다!
그런데 뒤에 검사 가 오래 남 았 는데 무슨 귀신 인지 모 르 겠 어 요?
Spring-boot 2.3.x 소스 코드 가 Gradle 컴 파일 과정 에 대한 상세 한 설명 을 바탕 으로 하 는 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 Spring-boot 2.3.x 소스 코드 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 바 랍 니 다!