`
zachary.guo
  • 浏览: 487805 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Building Spring 3

    博客分类:
  • J2EE
阅读更多
        Spring 3 正式发布已经有好长时间了,第一次从 SVN 拿下源代码进行编译,总是编译不过。事实上,Spring Team Blog 上已经有一篇关于构建 Spring 3 的文章,但按照文章说的一步一步的来做时,不是这里出了问题就是那里出了一点小差错。其实,只要仔细阅读这篇文章,按它说的步骤来实践的话,只要你足够细心,最终是会成功的。这里,我将 Spring Team Blog 上的这篇文章中我们需要注意的地方列出来,作为学习笔记,供大家参考。

        ● JDK
        使用 Spring 3,至少需要 Java 5;编译 Spring 3,至少需要 Java 6。如果你的机器上装了 N 多个版本的 JDK,请确保环境变量中的那个 JDK 的版本不低于 6.0。

        ● Ant
        Ant 1.7 or later。

        ● 设置 JAVA_OPTS 和 ANT_OPTS
        设置环境变量,这依赖于你的机器的配置。要提供 JVM 足够大的内存,否则编译过程中会出现内存溢出。参考设置如下:
JAVA_OPTS=-Xms512m -Xmx1024m -XX:MaxNewSize=512m -XX:MaxPermSize=1024m
ANT_OPTS=-Xms256m -Xmx768m -XX:MaxNewSize=256m -XX:MaxPermSize=512m

        在以上三点确保的情况下,可以继续下面的操作了,基本上编译不会出现什么问题了。

        ● Check out the sources
        Check out the sources from https://src.springframework.org/svn/spring-framework/trunk/

        ● Build
        使用 ant 来 build,它会通过 ivy 来下载 Spring 3 所依赖的第三方 jar 包。这段时间你可以喝杯咖啡或是小憩一会。
---> cd ${SRC_HOME}/build-spring-framework
---> ant

Hava a rest......

[......]
BUILD SUCCESSFUL

        接下来要做的,就是将 Spring 3 的源代码导入到 Eclipse 中来。

        ● Create the IVY_CACHE classpath variable
        Spring 3 的整个工程依赖于 IVY_CACHE 这个环境变量,它其实就是 ant build 时创建的 ivy-cache 目录,这里面都是 Spring 3 所依赖的第三方 jar 包。
        Window -> Preferences -> Java -> Build Path -> Classpath Variables -> New:
Name=IVY_CACHE
Path=${SRC_HOME}/ivy-cache/repository


        ● Set the workspace default JRE to Java 6
        Window -> Preferences -> Java -> Installed JREs,确保选中的是 Java 6。

        ● Import sources into Eclipse
        File -> Import -> Existing Projects into workspace,root directory 选择 ${SRC_HOME}。

        ● 结束语
        至此为止,构建结束。此时,还是会发现 Eclipse 中有若干个工程构建失败,查看原因,是由于 aop,orm,web 这三个工程的的 Build Path 的 ivy 路径有点问题,我干脆删除,就可以了。还有一种方式是补齐 ivy 的路径,这个不影响整个 Spring 3 的构建。但我还是有点不明白,Spring 开发团队在 Eclipse 中使用这样的 ivy 路径难道不报错吗?

        最近更新了 Spring 的代码,将近有一年没有去更新了,尝试 build 时,总是单元测试过不了。我知道,只要我不执行单元测试的 target 就可以成功构建。可是可恶的 UE 啊,我在文件搜索中,未看见【搜索子目录】,导致我怎么搜 【<target name="test"】 都搜不到。是不是用眼过度啊???再次搜索,把 test target 所依赖的测试任务全部去掉,OK,重新 build,我心仪已久的 【BUILD SUCCESSFUL】 终于又再次出现了!
分享到:
评论
8 楼 zachary.guo 2012-11-07  
wangling1hao 写道
为啥我ant后很快就执行完了,也没有ivy-cache目录生成呢。我用的是spring3.1


Spring 3.1.x 已经不可同日而语了,它已经迁移到 git 上了,自行 build 的方式估计也发生了变化。你可以参考:https://github.com/SpringSource/spring-framework
7 楼 wangling1hao 2012-11-06  
为啥我ant后很快就执行完了,也没有ivy-cache目录生成呢。我用的是spring3.1
6 楼 zachary.guo 2012-08-22  
ymgjava 写道
把 test target 所依赖的测试任务全部去掉
请问下,你是怎样“把test target 所依赖的测试任务全部去掉”的?

搜索 <target name="test" ,去掉即可。它所依赖的 task,也会在 <target name="test"> 里,继续搜索并删除即可。
5 楼 ymgjava 2012-08-22  
把 test target 所依赖的测试任务全部去掉
请问下,你是怎样“把test target 所依赖的测试任务全部去掉”的?
4 楼 shuwei003 2012-01-09  
不错不错,终于找到一个能解决问题的
3 楼 zachary.guo 2011-12-15  
fyyzt 写道
请问你的
JAVA_OPTS=-Xms512m -Xmx1024m -XX:MaxNewSize=512m -XX:MaxPermSize=1024m  
ANT_OPTS=-Xms256m -Xmx768m -XX:MaxNewSize=256m -XX:MaxPermSize=512m
是在Eclipse中设置的吗


编译 spring 的整个过程是在 ant 控制台中执行,根本牵涉不到 ide,不会有人拿 ide 去编译源码。

这些设置都是在环境变量中设置的。windows 环境的话,在 我的电脑 -> 属性 -> 高级 -> 环境变量;linux 环境的话,修改 /etc/profile 文件即可。
2 楼 fyyzt 2011-12-15  
请问你的
JAVA_OPTS=-Xms512m -Xmx1024m -XX:MaxNewSize=512m -XX:MaxPermSize=1024m  
ANT_OPTS=-Xms256m -Xmx768m -XX:MaxNewSize=256m -XX:MaxPermSize=512m
是在Eclipse中设置的吗
1 楼 shengzimajinming 2011-12-14  
这个刚好用上了,谢谢!

相关推荐

    Building Spring 2 Enterprise Applications

    Build a three-tier enterprise Java applicaiton using the lastes the Spring Framework 2.x has to offer.

    Building Web Apps with Spring 5 and Angular epub

    Building Web Apps with Spring 5 and Angular 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    Building-REST-Services-with-Spring

    本文档将详细介绍如何使用Spring 3构建RESTful服务,并涵盖安全、发现性、错误处理等多个方面。 #### 二、构建基本的Web项目 1. **概述** 本章节主要介绍如何启动一个基本的Web应用项目,重点在于如何从传统的...

    Building Web Apps with Spring 5 and Angular azw3

    Building Web Apps with Spring 5 and Angular 英文azw3 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    building restful web services with spring 5 2e

    Building RESTful Web Services with Spring 5 – Second Edition: Leverage the power of Spring 5.0, Java SE 9, and Spring Boot 2.0 Find out how to implement the REST architecture to build resilient ...

    Building a Rest API with Spring

    3. 为REST API添加Spring Security:这部分详细说明了为REST API集成Spring Security的过程,包括了web.xml中的Spring Security配置、安全配置、认证入口点、登录表单的配置、认证状态的正确返回码以及认证失败时的...

    Pro Spring Boot 2第2版-2009-EPUB版

    Pro Spring Boot 2: An Authoritative Guide to Building Microservices, Web and Enterprise Applications, and Best Practices Quickly and productively develop complex Spring applications and microservices...

    Building Spring 2 Enterprise Applications(2007.8).pdf

    《构建Spring 2企业级应用》一书是Interface21公司、Bram Smeets与Seth Ladd共同编写的,于2007年出版,主要针对的是使用Java Spring框架进行企业级应用开发的技术人员。Spring框架自2004年由Rod Johnson创建以来,...

    Building Microservices with Spring.epub

    Getting Started with Spring Microservices begins with an overview of the Spring Framework 5.0, its design patterns, and its guidelines that enable you to implement responsive microservices at scale....

    Building Web Apps with Spring 5 and Angular 无水印pdf

    Building Web Apps with Spring 5 and Angular 英文无水印pdf pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有...

    Pro Spring Boot 2 An Authoritative Guide to Building MicroServices

    Pro Spring Boot 2 An Authoritative Guide to Building MicroServices, Web and Enterprise Applications, and Best Practices

    Building+a+REST+API+with+Spring

    ### 3. Spring Security for a REST API #### 3.1 概览 安全性对于任何应用程序都至关重要。Spring Security为REST API提供了强大的认证和授权功能。 - **配置Spring Security**:使用`@EnableWebSecurity`注解启动...

    Building RESTful Web Services with Spring 5(2nd) epub

    Building RESTful Web Services with Spring 5(2nd) 英文epub 第2版 本资源转载自网络,如有侵权,请联系上传者或csdn删除查看此书详细信息请在美国亚马逊官网搜索此书

    Beginning Spring Boot 2 Applications and Microservices with the Spring Framework

    Spring is the most popular Java-based framework for building enterprise applications. The Spring framework provides a rich ecosystem of projects to address modern application needs, like security, ...

    Building Modern Web Apps with Spring Boot and Vaadin.pdf

    根据提供的文件信息,我们可以了解到《Building Modern Web Apps with Spring Boot and Vaadin.pdf》是一本关于使用Java语言开发现代Web应用的指南,特别强调了Spring Boot和Vaadin框架的结合使用。文件中提及的内容...

    Building Applications with Spring 5 and Kotlin

    Kotlin shares the same pragmatic, innovative and opinionated mindset as Spring, so they work well together. Spring when combined with Kotlin helps you to reach a new level of productivity. This ...

    Beginning-Spring-Boot-2.pdf

    Spring is the most popular Java-based framework for building enterprise applications. The Spring framework provides a rich ecosystem of projects to address modern application needs, like security, ...

    Spring.Essentials.178398

    Build mission-critical ...3. Accessing Data with Spring 4. Understanding WebSocket 5. Securing Your Applications 6. Building a Single-Page Spring Application 7. Integrating with Other Web Frameworks

Global site tag (gtag.js) - Google Analytics