Maven Artifacts (09/2007)

工程 | Ben Hale | 2007年9月18日 | ...

到目前为止,Spring Portfolio 的 Maven Artifacts,特别是快照版,创建不一致且散布在各种位置。在过去几周,我们一直在努力使项目在创建和上传这些 artifacts 时更加一致。

Maven 仓库

Spring Portfolio 中对 Maven 支持最有用的改进之一是使用了统一的仓库位置。根据您对代码的熟悉程度,有三种不同的仓库。

发布版仓库

对于任何最终发布版(Spring 2.5, Spring Web Flow 2.0 等),该发布版的 Maven artifacts 将被上传到 Maven Central 仓库(http://repo1.maven.org/maven2)。使用此仓库不需要您进行任何操作,因为 Maven 会自动在那里查找 artifacts。

此仓库中的 artifacts **确实**遵循预期的仓库行为,并且不会(也不能)被删除。

里程碑版仓库

对于任何里程碑发布版(Spring 2.5-RC1, Spring Web Flow 2.0-M2 等),该发布版的 Maven artifacts 将被上传到 Spring 里程碑仓库(http://s3.amazonaws.com/maven.springframework.org/milestone)。使用此仓库需要您在 POM 的 <repositories/> 元素中添加一个条目。它应该看起来像这样


<repository>
    <id>spring-milestone</id>
    <name>Spring Portfolio Milestone Repository</name>
    <url>http://s3.amazonaws.com/maven.springframework.org/milestone</url>
</repository>

此仓库中的 artifacts **不**遵循预期的仓库行为,并且会定期被删除。最终版本发布后(Spring 2.6, Spring Web Flow 2.1 等),先前发布的所有里程碑版本 artifacts 将被删除。例如,当 Spring 2.6 发布时,Spring 2.5 的里程碑版将被删除,而 Spring 2.6 的里程碑版将保留。

快照版仓库

对于任何快照构建(Spring 2.5-SNAPSHOT, Spring Web Flow 2.0-SNAPSHOT 等),该构建的 Maven artifacts 将被上传到 Spring 快照仓库(http://s3.amazonaws.com/maven.springframework.org/snapshot)。使用此仓库需要您在 POM 的 <repositories/> 元素中添加一个条目。它应该看起来像这样


<repository>
    <id>spring-snapshot</id>
    <name>Spring Portfolio Snapshot Repository</name>
    <url>http://s3.amazonaws.com/maven.springframework.org/snapshot</url>
</repository>

此仓库中的 artifacts **不**遵循预期的仓库行为,并且会定期被删除。对于给定的 artifact,至少会保留最新的 10 个快照构建。如果 artifact 从分发中移除,其快照构建将立即被移除。在里程碑版或最终发布版发布时,artifact 的所有快照版将被移除,并为下一个发布版创建一个新的快照版。

仓库浏览

里程碑版和快照版仓库都托管在 Amazon 的 S3 服务上,因此目录结构不易于人类阅读。要以人类可读的格式查看这些仓库,请使用 S3Browse 工具。

仅使用这些 URL 进行人类可读的查看。如果您将它们用作 POM 的 URL,将会遇到错误。

Artifact 源码

另一个重要的改进是为所有发布版添加了源码 artifacts。您会注意到在里程碑版仓库中,所有 artifacts 都部署了源码。将来对于所有最终发布版也将是如此。具体来说,从 Spring 2.5 发布版开始,除了合并的 Spring 源码外,每个模块也将拥有一个源码 artifact。

Spring 快照版

最后一个改进尚未完成;Spring 的每日快照版。我很高兴地说这即将完成。我仍在解决关于 Maven Ant Tasks 的最后一些问题,但这最终将开始出现,届时我将再次宣布。此外,您也可以期待此功能最终会推广到所有其他基于 ANT 的 Spring Portfolio 项目,以便所有项目都将创建 Maven 快照版以及里程碑版。

Spring Framework 2.1 升级为 Spring Framework 2.5!

工程 | Juergen Hoeller | 2007年9月10日 | ...

我的第一篇博客文章 - 这是一个多么重大的发布!:-)

在发布一系列 Spring 2.1 里程碑版本后,我们一直在回顾我们引入的整体特性集

  • **全面的 Java 6 和 Java EE 5 支持** (JDBC 4.0, JTA 1.1, JavaMail 1.4, JAX-WS 2.0 等)
  • **功能齐全的注解驱动依赖注入** (包括对 'qualifier' 注解的支持)
  • 支持**类路径中的组件扫描** (自动检测带注解的类)
  • AspectJ pointcut 表达式中的 **bean 名称切入点元素**
  • 内置支持 **AspectJ 载入时织入** (基于 Spring 的 LoadTimeWeaver 抽象)
  • **进一步的 XML 配置命名空间** ("context", "jms") 以最大化便利性
  • **扩展的 SimpleJdbcTemplate** 功能 (支持命名参数等)
  • 官方**认证的 WebSphere 支持** (支持 WebSphere 6 UOWManager 功能等)
  • Spring framework jar 包开箱即用地作为 **OSGi 兼容的 bundle** 提供
  • Spring ApplicationContext 可以**部署为 JCA RAR 文件** (用于无头应用模块)
  • **JCA 1.5 消息端点管理** (用于 Spring 管理的 JMS 和 CCI 消息监听器)
  • 完全**修订的集成测试框架** (支持 JUnit 4 和 TestNG)
以及许多细节上的改进。几乎所有这些特性都已在最近发布的 2.1 M4 中可用。

我们认为这**显著**超出了我们最初为 Spring 2.1 计划的内容。里程碑版本使用的版本号 2.1 并不能反映此主要版本中特性的重要性和全面性。

因此,我很高兴地宣布,2.1 里程碑版本将无缝过渡到**Spring Framework 2.5 作为即将到来的主要版本!** Spring 2.5 计划于...

Interface21 在国会证词中被提及

工程 | Rod Johnson | 2007年9月8日 | ...

Interface21 国会证词中被提及

风险投资家、Core Capital Partners 创始人 Jonathan Silver 于周四就针对风险投资家的税率拟议修改作证。他的论点之一是,基于风险投资的公司在美国各地创造就业机会

下一个重要业务将从何而来?真相是,没有人知道,这就是风险投资家在所有五十个州各地寻找这些机会的原因。这也是风险基金为何支持纽约市的 Music Nation、密歇根州安阿伯的 Incept Biosystems、**佛罗里达州西墨尔本的 Interface21**、马萨诸塞州韦斯特伯勒的 Boston Power 以及德克萨斯州圣安东尼奥的 Click Forensics。

事实上,我们的总部正在迁往加利福尼亚州圣马特奥。像许多软件供应商一样,我们认为硅谷是实现我们潜力的最佳地点。我们最大的合作伙伴集中在这里,而且这里是招募软件行业高管人才的好地方。然而,Silver 的观点仍然有效。我们**确实**正在佛罗里达州创造就业机会——我们的 Web 团队就设在那里,目前正通过 Spring Web Flow 做着了不起的事情...

阿姆斯特丹 Java 见面会 Q307,9月21日

工程 | Alef Arendsen | 2007年8月2日 | ...

又到了下次 Java 见面会的时间了。我决定将这个在阿姆斯特丹举行的季度活动的第七场推迟到夏季结束后,因为荷兰这里的大多数人在八月左右会休几周假。

我查看了我们的内部日程安排,看来九月只剩下 9月21日 这一天,所以我希望它也适合其他人的日程安排。

我们将沿用上次四月份见面会的地点,这对我们来说非常方便,而且大家似乎也觉得没问题。有史以来第一次 Java 见面会是在我最喜欢的阿姆斯特丹聚会场所举行的...

揭穿迷思:代理影响性能

工程 | Alef Arendsen | 2007年7月19日 | ...

在最近的一篇博客文章中,Marc Logemann 探讨了代理性能问题。在他的文章中,他要求“Spring 团队”提供一份白皮书。我不想花大量篇幅讨论代理与字节码织入机制之间的纳秒级差异,但我认为重新强调一次两者之间的区别以及这场讨论是否重要仍然很有价值。

什么是代理以及我们为何使用它们?

首先,让我们简要回顾一下代理的用途(通常以及在 Spring 中)。根据 GoF(四人帮)关于设计模式的书,代理是另一个对象的替代对象或占位符,用于控制对其的访问。因为代理位于调用对象和真实对象之间,它可以决定阻止真实(或目标)对象被调用,或者在目标对象被调用之前做一些事情。 prox.jpg

换句话说,代理可以用作真实对象的替代者,以便为这些对象应用额外的行为——无论是与安全相关的行为、缓存还是性能测量...

Grails 与 Maven:一场不便的结合

工程 | Dave Syer | 2007年7月14日 | ...

引言

Grails 似乎越来越强大,正如人们所说,它看起来确实“有潜力”。我对它在 Web 应用领域之外的应用非常感兴趣。如果您了解我在 Spring Batch 方面的工作,您可能会猜到这可能把我带向何处。但在这篇文章中,我只想分享一些我在 Grails 应用的基本、底层部署和构建方面的经验。

我对 Maven 2 有着爱恨交织的关系,并且正在学习喜欢 Grails,但遗憾的是这两者并不能很好地协同工作。这将会...

Setter 注入 vs 构造函数注入以及 @Required 的使用

工程 | Alef Arendsen | 2007年7月11日 | ...

几个月前,我们开始在 www.springframework.org 上发布调查问卷,邀请大家提供他们对 Spring、它的一些特性以及他们如何使用这些特性的反馈。我提出的第一个问题是人们是否检查了必需的依赖项,如果检查了,他们使用了什么机制。我很快就这个问题进行了跟进,询问社区他们使用了哪种事务管理策略。

令我高兴的是,当我第一次查看结果时,早在三月份,很多人通过在第一次调查中投票告诉我们他们正在使用 @Required 注解。第二次调查问...

Java EE 6 做对了

工程 | Rod Johnson | 2007年7月3日 | ...

Java EE 6 提案(JSR 316)于今天发布。我相信这将是该平台自近 10 年前发布以来最重要的修订,并应受到技术用户的欢迎。Interface21 很高兴成为该 JSR 的支持者,我期待着为其贡献力量。

Java EE(在其大部分历史中被称为 J2EE)在创建 Java 中间件市场方面发挥了重要作用。然而,在这 10 年间,该平台出现了一些重要问题,例如

  • Java EE 兼容服务器需要臃肿地包含一系列绝大多数用户不感兴趣的功能
  • 自 J2EE 设想以来,企业需求已经改变,且“一刀切”模型越来越不适用
  • 企业级 Java 因框架(特别是在开源领域)的出现而大大增强,这些框架提高了开发人员的生产力,并使他们的生产应用更高效、更易于维护
  • 诸如 Ruby on Rails 甚至 .NET 等新挑战表明,在快速变化和创新的时代,舒适的 2-3 年发布周期会危及整个平台

Java EE 6 是该平台的重要修订,它具有...

开源正在消亡吗?证据不足

工程 | Rod Johnson | 2007年6月29日 | ...

Michael Hickins 最近在 eWeek 上发表了一篇题为《开源正在消亡吗》的文章?这个标题吸引了我,无疑也吸引了许多其他人。但这篇文章并未证明这个论点,尽管它包含了一些值得讨论的有趣观点。

文章大部分内容是关于政府在开源方面的经验以及像 IBM 这样的供应商动机的猜测。我更喜欢通过行动来判断公司和个人,而不是猜测他们的动机。有大量证据表明,例如 IBM,非常重视开源。还有大量...

订阅 Spring 新闻简报

通过 Spring 新闻简报保持联系

订阅

领先一步

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

了解更多

获取支持

Tanzu Spring 通过一个简单的订阅,为 OpenJDK™、Spring 和 Apache Tomcat® 提供支持和二进制文件。

了解更多

即将举行的活动

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

查看全部