spring5.0.2.RELEASE源码环境构建

Spring5 源码下载注意事项

  首先你的JDK 需要升级到1.8 以上。Spring3.0 开始,Spring 源码采用github 托管,不再提供官网下载链接。大家可自行去github 网站下载,我们使用的版本下载链接为:https://github.com/spring-projects/spring-framework/archive/v5.0.2.RELEASE.zip,下载完成后,解压源码包会看到以下文件目录:

基于Gradle 的源码构建技巧

  可以通过查看build.gradle 中 gradleVersion = '4.3.1' 来下载对应的Gradle版本。由于Spirng5 以后都是采用Gradle 来编译,所以构建源码前需要先安装Gradle 环境。Gradle 下载地址:https://gradle.org/releases,我使用的是Spring5 官方推荐的版本Gradle4.3.1,下载链接为:https://gradle.org/next-steps/?version=4.0&format=bin , 下载完成后按以下步骤操作, 以Windows 操作系统为例:

第一步:配置环境变量

第二步:添加环境变量:Path:%GRADLE_HOME%\bin

 

 第三步:检测环境,输入gradle -v 命令,得到以下结果:

第四步:编译源码,cmd 切到spring-framework-5.0.2.RELEASE 目录,运行gradlew.bat

第五步:转换为eclipse 项目,执行import-into-eclipse.bat 命令,构建前,请确保网络状态良好,按任意键继续。

第六步:等待构建成功(若中途出现错误,大部分情况是由于网络中断造成的,重试之后一般都能解决问题),构建成功后,会出现如下界面:

到这一步为止,还在使用Eclipse 的小伙伴已经可以将项目导入到Eclipse 中了。而我们推荐使用的IDEA也比较智能,可以直接兼容Eclipse 项目。接下来看下面的步骤:

第七步:导入IDEA:

 

第八步:等待构建完成,在网络良好的情况下大约需要10 分钟便可自动构建完成,你会看到如下界面:

第九步:在IDEA 中,如果Project 下的子项目文件夹变成粗体字之后,说明已经构建成功。还有一种验证方式是:找到ApplicationContext 类,按Ctrl + Shift + Alt + U,出现类图界面说明构建成功。

Field error in object 'admin' on field 'id': rejected value [null]; codes [typeMismatch.admin.id,typeMismatch.id,typeMismatch.java.lang.Integer,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [admin.id,id]; arguments []; default message [id]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.lang.Integer' for property 'id'; nested exception is java.lang.NumberFormatException: For input string: "null"] at org.springframework.web.method.annotation.ModelAttributeMethodProcessor.resolveArgument(ModelAttributeMethodProcessor.java:157) ~[spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:124) ~[spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:161) [spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:131) [spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:871) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:777) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:991) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:925) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:978) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:881) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:652) [servlet-api.jar:4.0.FR] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:855) [spring-webmvc-5.0.2.RELEASE.jar:5.0.2.RELEASE]
05-31
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值