spring5源码阅读环境搭建

spring5源码阅读环境搭建

参考
编译Spring源码省心小贴士
spring源码系列(六)——番外篇如何编译spring的源码

D:\javaCode\javaCodeWin2020Spring\Spring-Framework-v5.2.3.RELEASE\Spring-Framework>gradlew :spring-oxm:compileTestJava
Starting a Gradle Daemon (subsequent builds will be faster)

> Task :spring-oxm:genJaxb
[ant:javac] : warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds

BUILD SUCCESSFUL in 3m 33s
39 actionable tasks: 23 executed, 16 from cache
Build scan background action failed.
org.gradle.process.internal.ExecException: A problem occurred starting process 'command 'git''
        at org.gradle.process.internal.DefaultExecHandle.execExceptionFor(DefaultExecHandle.java:237)
        at org.gradle.process.internal.DefaultExecHandle.setEndStateInfo(DefaultExecHandle.java:214)
        at org.gradle.process.internal.DefaultExecHandle.failed(DefaultExecHandle.java:364)
        at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:87)
        at org.gradle.internal.operations.CurrentBuildOperationPreservingRunnable.run(CurrentBuildOperationPreservingRunnable.java:38)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
        at java.lang.Thread.run(Thread.java:748)
Caused by: net.rubygrapefruit.platform.NativeException: Could not start 'git'
        at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:27)
        at net.rubygrapefruit.platform.internal.WindowsProcessLauncher.start(WindowsProcessLauncher.java:22)
        at net.rubygrapefruit.platform.internal.WrapperProcessLauncher.start(WrapperProcessLauncher.java:36)
        at org.gradle.process.internal.ExecHandleRunner.startProcess(ExecHandleRunner.java:98)
        at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:71)
        ... 7 more
Caused by: java.io.IOException: Cannot run program "git" (in directory "D:\javaCode\javaCodeWin2020Spring\Spring-Framework-v5.2.3.RELEASE\Spring-Framework"): CreateProcess error=2, 系统找不到指定的文件。
        at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
        at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:25)
        ... 11 more
Caused by: java.io.IOException: CreateProcess error=2, 系统找不到指定的文件。
        at java.lang.ProcessImpl.create(Native Method)
        at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
        at java.lang.ProcessImpl.start(ProcessImpl.java:137)
        at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
        ... 12 more
D:\javaCode\javaCodeWin2020Spring\Spring-Framework-v5.2.3.RELEASE\Spring-Framework>

gradle优化

build.gradle

plugins {
	id 'java-gradle-plugin'
}

repositories {
	mavenLocal()
	maven {
		url 'https://maven.aliyun.com/repository/central'
	}
	maven {
      url 'https://maven.aliyun.com/repository/public'
    }
    maven {
      url 'https://maven.aliyun.com/repository/spring'
    }
	maven {
		url 'https://maven.aliyun.com/repository/gradle-plugin'
	}
	maven {
		url 'https://maven.aliyun.com/repository/apache-snapshots'
	}
	maven {
		url 'https://maven.aliyun.com/repository/google'
	}
	gradlePluginPortal()
}


dependencies {
	implementation "me.champeau.gradle:japicmp-gradle-plugin:0.2.8"
	implementation "com.google.guava:guava:28.2-jre" // required by japicmp-gradle-plugin
}

gradlePlugin {
	plugins {
		apiDiffPlugin {
			id = "org.springframework.build.api-diff"
			implementationClass = "org.springframework.build.api.ApiDiffPlugin"
		}
		compileConventionsPlugin {
			id = "org.springframework.build.compile"
			implementationClass = "org.springframework.build.compile.CompilerConventionsPlugin"
		}
		optionalDependenciesPlugin {
			id = "org.springframework.build.optional-dependencies"
			implementationClass = "org.springframework.build.optional.OptionalDependenciesPlugin"
		}
	}
}

prr

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
#distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
#distributionUrl=file:///d:/javatools/e-gradle/gradle-5.6.4-bin.zip
distributionUrl=file:///d:/javatools/e-gradle/gradle-6.2.2-all.zip

ss

allprojects {
    repositories {
        def ALIYUN_REPOSITORY_URL = 'https://maven.aliyun.com/nexus/content/groups/public'
        def ALIYUN_JCENTER_URL = 'https://maven.aliyun.com/nexus/content/repositories/jcenter'
		def ALIYUN_SPRING_URL = 'https://maven.aliyun.com/repository/spring'
        all {
            ArtifactRepository repo ->
                if (repo instanceof MavenArtifactRepository) {
                    def url = repo.url.toString()
                    if (url.startsWith('https://repo1.maven.org/maven2')) {
                        project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."
                        remove repo
                    }
                    if (url.startsWith('https://jcenter.bintray.com/')) {
                        project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."
                        remove repo
                    }
                    if (url.startsWith('http://repo.spring.io/libs-milestone/')) {
                        project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_SPRING_URL."
                        remove repo
                    }					
                }
        }
        maven {
            url ALIYUN_REPOSITORY_URL
            url ALIYUN_JCENTER_URL
			url ALIYUN_SPRING_URL
        }
    }
}
gradlew :spring-oxm:compileTestJava
gradlew :spring-oxm:compileTestJava

猜你喜欢

转载自blog.csdn.net/e891377/article/details/104143053