最近在研究Spring想看一下3.xx旧版本的源码,发现要用到Gradle,导入过程有些波折,现记下来关键步聚:
Sping版本DOC、源码下载,这个站下下来的不能导入eclipse,因没有第三方库
http://repo.spring.io/libs-release/org/springframework/spring/
从以下github网址下载所要的版本:
https://github.com/spring-projects/spring-framework/releases
下载grandle解压,将grandle\bin目录放到path中
Spring4.xx以上版本要JAVA8支持
Spring 3.xx版本要将build.gradle和gradle\wrapper\gradle-wrapper.properties中的https替换成http,否则下载不下来。
我用3.2.16出现:
出现Execution failed for task ':spring-core:compileJava'.编译错是jdk1.6版本太低,升级到1.7版解决
下载完成后,第三方库被Gradle存放在Gradle本地lib库中,在user目录的.gradle目录下
Eclipse升级到 Version: Mars.1 Release (4.5.1) Build id: 20150924-1200 JDK1.7版。
最后Eclipse中import选general exsiting pojects into workspace,不要勾选拷到工作目录,最后导入成功,在Eclipse中编译通过,
一共有二十几个项目,项目之间有互相引用关系。看了一下spring-aop,spring-beans,spring-core三个核心类,一共有1464个java类,去除test类和package类之后,还有732个java类,源码合记3.6M, 看来spring真是得瘦瘦身了。
其它步聚参考以下文章:
http://www.cnblogs.com/javaminer/p/3378081.html
本人最近想要研究spring的源代码,但当要导入spring sub project到Eclipse里面去的时候遇到了不少麻烦(其实都怪自己想当然)。
找到spring-framework的gitHub主页(http://springsource.org/spring-framework),也没看README部分的说明就直接copy了工程的源码下载地址https://github.com/spring-projects/spring-framework.git到SVN去下载,然后想直接通过check out把tags下面的v3.2.4.RELEASE目录下面的spring-core sub project 导入成Eclipse里面的工程。check out完成后发现里面的目录结构采用的是maven风格,于是直接转换成maven工程,转换成功后发现有许多错误,依赖jar包没有导入进来,刚开始本人还想直接通过maven一个个来导入,但是后来发现这个过程无法进行,依赖的jar太多根本进行不下去,一个子项目还好,spring源码里面有十几个子项目。忙活了半天无赖只好放弃,继续寻找其他方案。结果在spring-framework的gitHub主页上看到构建源码的文档,发现spring framework采用Gradle自动构建,经过自己的摸索终于一次性完成了所有子项目的导入。
具体步骤如下:
1.从svn里面选择一个要研读的版本(我这里是选的tags/v3.2.4.RELEASE)导出到一个目录下面(如:D:/opensource/spring-framework)。
2.安装Gradle软件,安装过程很简单,具体看官方document http://www.gradle.org/docs/current/userguide/userguide_single.html#installation有详细的步骤。
3.进入D:/opensource/spring-framework目录里面有一个import-into-eclipse.bat批处理文件,顾名思义,双击出现控制台界面,连续按两次回车键,就可以开始自动构建了,构建过程需要花很长时间(下载各种依赖jar包和dom文件),也许是我家里网速不好吧,用了几个小时。中间还经常出现停止不动的情况,按Ctrl+c终止运行,再一次双击import-into-eclipse.bat文件重复上述过程即可(会接着上次构建的位置继续构建),到构建完成后控制台会自动关闭。
4.在Eclipse里面菜单File--->import选择General下面的Exsiting projects into workspace,这样就导入完成了,不知怎么的会有几个源文件文件出现错误,比如@Override了一个不存在的方法(处理方法是去掉@Override注解即可),注意有些sub project要jre1.7以上(里面引用了1.7里面的新的api)。
分享到:
相关推荐
在开发过程中,IDEA、Eclipse 等集成开发环境提供了丰富的 Spring MVC 插件支持,如代码提示、自动配置、断点调试等,极大提高了开发效率。同时,Maven 或 Gradle 可以帮助管理项目依赖,确保 Spring MVC 相关库的...
标题中的“基于spring-boot+java实现的一个云笔记系统源码”揭示了这是一个使用Spring Boot框架和Java编程语言构建的云端笔记应用。这个项目的核心技术栈是Spring Boot,它是一个流行的微服务开发框架,用于简化...
IDEA 或 Eclipse 等集成开发环境提供了强大的 Spring 支持,包括代码提示、自动配置和调试功能。Maven 或 Gradle 作为构建工具,管理项目依赖,使得项目结构清晰,易于维护。 **文件分析** 压缩包中的 "springMVC-...
使用IDE如IntelliJ IDEA或Eclipse,可以直接导入这个项目进行编译和运行。 这个简单的“Hello World”示例揭示了Spring的基本工作流程:通过配置定义bean,使用依赖注入连接组件,最后通过控制器处理HTTP请求。随着...
总结来说,SpringBoot学习笔记和实践源码是理解并掌握Spring Boot框架的重要资源。通过理论学习与实际操作相结合,开发者能够迅速上手Spring Boot,从而提升开发效率,构建出健壮、易维护的Java应用。
SSM框架是Java web开发中常用的三大框架Spring、Spring MVC和MyBatis的组合,用于构建高效、灵活的Web应用程序。本项目是一个基于SSM框架和MySQL数据库搭建的云笔记系统,模仿了知名的有道云笔记,旨在提供类似的...
SpringBoot是由Pivotal团队开发的框架,旨在简化Spring应用的初始搭建以及开发过程,通过“约定优于配置”的理念,使得Java开发者能够快速构建可运行的应用。 1. **SpringBoot简介** SpringBoot基于Spring框架,但...
可能还会有Spring官方文档、教程笔记或其他学习资料,这些资料对于理解和掌握Spring框架的细节非常有帮助。 总之,这个软件包是学习Spring框架的宝贵资源,它将帮助初学者快速搭建开发环境,理解并实践Spring的...
标签“源码”提示我们可以深入研究Spring的源码,理解其内部工作原理,而“工具”标签则意味着Spring与许多开发工具(如IDEA、Eclipse等)有良好的集成,便于开发和调试。 总的来说,Spring框架为Java开发者提供了...
7. **项目结构**:从压缩包的名称来看,源码可能按照Maven或者Gradle的标准目录结构组织,包括src/main/java(存放Java源码)、src/main/resources(存放配置文件)、src/main/webapp(存放Web资源如HTML、CSS、...
4. **开发工具**:标签中的"工具"可能指的是开发者在Web开发过程中使用的各种辅助软件,如IDE(IntelliJ IDEA、Eclipse)、版本控制系统(Git)、构建工具(Maven、Gradle)、调试器、测试框架(JUnit、TestNG)等。...
在笔记中,可能会选取一些开源项目或标准库的源码进行分析,比如Spring框架、Apache Commons库等,帮助学员理解高级编程技巧和最佳实践。 最后,笔记可能还会涉及到单元测试和持续集成的概念,如JUnit测试框架的...
8. **技术栈**:基于上述信息,我们可以推测项目可能使用了Spring Boot、MyBatis、Thymeleaf或JSP作为模板引擎,还有可能使用了Maven或Gradle作为构建工具,具体的技术栈还需要深入源码查看实际使用的库和框架。...
在Java Web开发中,通常会用到如Spring、MyBatis、Hibernate等框架,也可能包含一些如Tomcat服务器、Maven或Gradle构建工具、Eclipse或IntelliJ IDEA等IDE相关的配置文件。 【压缩包子文件的文件名称列表】: 1. `....
在"HelloServlet"的示例中,"工具"标签可能指的是使用IDE(如Eclipse, IntelliJ IDEA)或者构建工具(如Maven, Gradle)来辅助开发和管理项目。这些工具可以帮助简化编码、编译、打包和部署的过程。 通过学习和实践...
- **开发笔记**:可能包含了开发过程中的问题记录、解决方案和技术要点。 通过这个项目,开发者可以深入理解Java Web开发流程,掌握SSM框架的应用,以及数据库设计和管理,同时提升前后端协作、项目管理和文档编写...
SSM架构是Java web开发中常用的三大框架Spring、Spring MVC和MyBatis的组合,它在企业级应用中被广泛采用。"Dn云笔项目部分实现代码ssm"是一个基于SSM框架的笔记项目,旨在帮助开发者学习和理解如何在实际项目中运用...
"文档"部分可能包含项目需求分析、设计文档、使用说明以及开发过程中的笔记。这些文档对于理解系统功能、设计思路以及如何部署和运行项目至关重要。 在开发过程中,版本控制工具如Git可能被用来管理代码版本,协同...
在Java开发中,IDE(集成开发环境)如IntelliJ IDEA和Eclipse,构建工具如Maven和Gradle,版本控制工具如Git,测试工具如JUnit,这些都是开发者必备的工具。通过学习如何有效利用这些工具,可以提高我们的开发效率和...
Struts是Java Web开发中的一款经典MVC框架,由Apache软件基金会维护,它极大地简化了构建基于J2EE的Web应用程序的过程。这篇笔记主要围绕Struts框架的核心概念、工作原理以及实际应用进行深入探讨。 一、Struts框架...