Spring作为一个非常优秀的框架,值得每个java开发者学习一下,学习其优秀的设计思想,下面是我自己关于Spring源码的下载和编译
https://spring.io/projects/spring-framework
这是源码里面自带的D:\gitcode\spring-framework-5.2.9.RELEASE\gradle\wrapper\gradle-wrapper.properties里面的配置
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 修改build.gradle打开build.gradle文件,全文找到repositories节点,会发现,里面有2个配置
原始配置
repositories { mavenCentral() maven { url "https://repo.spring.io/libs-spring-framework-build" } }修改为:
repositories { maven{ url 'https://maven.aliyun.com/nexus/content/groups/public/'} maven{ url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'} mavenCentral() maven { url "https://repo.spring.io/libs-spring-framework-build" } }安装官网的方式编译:
使用gradlew(gradle-wrapper命令) 先编译oxm:compileTest Java: Precompile spring-oxm with ./gradlew :spring-oxm:compileTestJava
编译compileTestJava模块打开spring源码文件夹的目录,输入
gradlew :spring-oxm:compileTestJava 下载速度太慢解决修改gradle-wrapper.properties,修改同学分享的连接,或者修改为本地连接
distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists #distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-bin.zip distributionUrl=http://scooper.top/wp-content/uploads/gradle-5.6.4-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists或者
distributionUrl=file:///E:/soft/gradle-xx-bin.zip分享百度云gradle-5.6.4-bin.zip文件
链接:https://pan.baidu.com/s/1baAgzSnsddXUNYiWO9ceEw 提取码:7lph编译结果如下
下面的报错不影响整体
compile(project(":spring-context")) 代表本项目的 2. 随意添加任意bean:
@Service public class UserServiceImpl { public void sayHi(){ System.out.println("Hello Spring!"); } } @Configuration @ComponentScan public class MainApp { public static void main(String[] args) { ApplicationContext context=new AnnotationConfigApplicationContext(MainApp.class); UserServiceImpl bean = context.getBean(UserServiceImpl.class); bean.sayHi(); } }测试运行结果: