Chris Beams

Chris Beams

校友
博客文章作者Chris Beams

Project Sagan:升级到 JDK 8

工程 | 2014年4月18日 | ...

我相信大多数读者都知道,Java SE 8 于上个月发布。结合最近发布的 STS 3.5.0及其对 JDK 8 的完全支持,我们认为现在是升级 Sagan 以利用新的语言特性和 API 的理想时机。

注意:还不熟悉Sagan 项目?它是 Spring 参考应用程序,为本博客和 spring.io 上的所有其他内容提供支持。查看本系列的第一篇 三篇 文章以了解更多详细信息。

Cloud Foundry 的Java 构建包 自发布之日起就提供了对 JDK 8 的支持。为了开始使用它,我们创建了自己的构建包分支将 JDK 版本从 1.7.0 提升到 1.8.0,并配置了我们的 Gradle 构建……

Project Sagan:零停机部署

工程 | 2014年4月4日 | ...

上周,我开始这个系列,宣布Sagan 参考应用程序现在是开源的,并展示了如何在您自己的机器上启动并运行它。

在这篇文章中,我想介绍一下我们如何每天多次使用 *蓝绿部署* 将 Sagan 推送到 spring.io 的生产环境中,而不会出现任何停机时间。您可能以前听说过这项技术;Martin Fowler 几年前对此进行过介绍,并且在强烈推荐的书籍《持续交付》中有一节专门介绍它。简而言之,它是这样的

  1. 维护生产环境的两个副本(“蓝色”和“绿色”);
  2. 通过将生产 URL 映射到它来将所有流量路由到蓝色环境;
  3. 在绿色环境中部署和测试对应用程序的任何更改;
  4. “切换开关”,即将 URL 映射到绿色环境并从蓝色环境取消映射。
  5. ……

评论回来了!

工程 | 2014年4月1日 | ...

当我们启动新的 spring.io 时,我们关闭了博客上的评论功能。一方面是因为我们时间有限,关闭评论是最简单的方法。另一方面,这是一个极简主义的实验。我们想看看我们能否减少反馈渠道的数量,并以此提高整体质量。我们要求每个人将他们对我们博客文章的疑问和反馈发送到 @springcentral Twitter 帐户,你们中的许多人做到了这一点——谢谢!

那么结果如何呢?好吧,我们听到社区的一些反馈,他们想念博客上的评论……

Project Sagan:spring.io 开源

工程 | 2014年3月27日 | ...

我们在去年的 SpringOne/2GX 上启动了 spring.io 网站,今天我很高兴代表团队宣布我们将开源为其提供支持的基于 Spring 的应用程序。

我们将该项目称为 *Sagan*,它旨在作为使用 Spring 构建现代 Web 应用程序的参考。代码现在可在 github.com/spring-io/sagan 获取,并且易于入门。这是一个简短的屏幕录像来证明这一点

!{iframe src="//player.vimeo.com/video/90126708" width="640"  height="360" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen}{/iframe}


在接下来的几周内,我们将发布一系列关于 Sagan 项目的文章,探讨应用程序的不同方面、其设计背后的决策以及记录其演变过程。例如,虽然 Sagan 今天在 JDK 7 和 JDK 8 上运行同样出色,但我们尚未利用Java 8 语言特性。当我们这样做时,我们将在此处发布博客文章,并在此过程中演示为什么我们认为Spring 和 Java 8 是如此完美的搭配。

同时,体验一下 Sagan!首先,您可以在本地启动并运行,然后尝试部署到 Cloud Foundry(在Pivotal Web Services)。

注意:使用邀请码“sagan”注册即可立即批准帐户。PWS 团队已提供有限数量的邀请码,先到先得。

在那里,您可以浏览wiki中的其余操作方法式文档,如果您能在此过程中提供反馈,我们将不胜感激。

正如 GitHub 的贡献者图表所示,Sagan 项目在内部已经成为一项大型团队工作。今天,我们非常高兴地邀请所有阅读这篇文章的人加入我们。有很多事情要做,并且欢迎拉取请求


*2014年5月16日更新*:SpringOne2GX 2013 会议的重播,“spring.io 内外”现已提供。

spring.io 网站

工程 | 2013年10月23日 | ...
$ curl -I springsource.org
HTTP/1.1 301 Moved Permanently
Content-length: 0
Date: Mon, 9 Sep 2013 19:30:00 PST
Location: https://springjava.cn

如果您正在阅读这篇文章,那么您很可能已经知道 springsource.org 已重新设计并重新启动为 spring.io。我们很高兴地报告,自上个月在 SpringOne 上启动以来,新网站的反响一直是积极和建设性的。感谢所有通过 @springcentral 提供反馈的人——请继续提供反馈!

如果您是第一次浏览,全新的指南集合是一个不错的起点。请记住,每个指南都由一个 GitHub 存储库支持,这意味着您可以将所有内容克隆到本地并通过……

Spring Framework 3.2 M2 发布

发行版 | 2012年9月12日 | ...

Spring Framework 3.2 的第二个里程碑版本现已可从SpringSource 仓库获取。如果您还不熟悉,请查看我们关于通过 Maven 解析这些构件的快速教程。完整的发行版压缩包照常可在 SpringSource 社区下载站点获取。

如果您还没有,请务必了解3.2 M1 中的更改

3.2 M2 的亮点包括:

3.2 的一个主要关注领域是确保 Spring Framework 在 JDK7 上完美运行。M2 构件已针对 JDK7 构建、测试和发布,我们还在每日构建中继续测试 JDK6 的兼容性。我们鼓励所有使用 JDK7 的 Spring 用户在您的开发和测试环境中试用 M2,并在 3.2 GA 之前提供尽可能多的反馈。谢谢!

使用@Configuration 类和 Spring 对子类代理的支持 (proxy-target-class=true) 的用户请注意:现在不再需要添加 CGLIB 作为显式依赖来使用这些功能。从 3.2 M2 开始,我们已升级到新的 CGLIB 3.0。我们将所有 net.sf.cglib 类重新打包到 org.springframework.cglib 并将其直接内嵌到 spring-core JAR 中。这意味着所有 @Configuration 和子类代理功能在 M2 中开箱即用,并且意味着不会与其他项目发生 CGLIB 冲突。同样,我们已升级到新的 ASM 4.0,我们继续像以前一样重新打包和内嵌它。但是请注意,我们在 M2 中取消了专用的 spring-asm jar,而是直接在 spring-core 中包含 org.springframework.asm 类。这两项升级对使用动态 JVM 语言编写 Spring 组件的 JDK7 用户来说都是好消息,因为这些新版本的 CGLIB 和 ASM 正确处理了 JDK7 中引入的新 invokedynamic 字节码指令。

尽情享受!

下载 | 文档 | Javadoc API | 变更日志 | JIRA | 论坛 | Stack Overflow

领先一步

VMware 提供培训和认证,以加速您的进步。

了解更多

获取支持

Tanzu Spring在一个简单的订阅中提供对OpenJDK™、Spring和Apache Tomcat®的支持和二进制文件。

了解更多

即将举行的活动

查看Spring社区中所有即将举行的活动。

查看全部