Maven 工件 (09/2007)
到目前为止,Spring 产品组合 Maven 工件,尤其是快照,创建不一致,并且散布在各个位置。在过去的两周里,我们一直在努力使项目在创建和上传这些工件方面更加一致。
Maven 存储库
Spring 产品组合中 Maven 支持最有用的一项改进是使用一致的存储库位置。根据您对代码的熟悉程度,有三个不同的存储库。
发布存储库
对于任何最终发布(Spring 2.5、Spring Web Flow 2.0 等),该版本的 Maven 工件将上传到 Maven Central 存储库(http://repo1.maven.org/maven2)。使用此存储库无需您做任何操作,因为 Maven 会自动在此处查找工件。
此存储库中的工件确实遵循预期的存储库行为,并且不会(也无法)被删除。
里程碑存储库
对于任何里程碑版本(Spring 2.5-RC1、Spring Web Flow 2.0-M2 等),该版本的 Maven 工件将上传到 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>
此存储库中的工件不遵循预期的存储库行为,并且将定期删除。在最终版本(Spring 2.6、Spring Web Flow 2.1 等)发布后,将删除先前版本工件的所有里程碑版本。例如,当 Spring 2.6 发布时,将删除 Spring 2.5 里程碑,而 Spring 2.6 里程碑将保留。
快照存储库
对于任何快照构建(Spring 2.5-SNAPSHOT、Spring Web Flow 2.0-SNAPSHOT 等),该构建的 Maven 工件将上传到 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>
此存储库中的工件不遵循预期的存储库行为,并且将定期删除。将至少保留给定工件的最后 10 个快照构建。如果从分发版中删除了工件,则其快照构建将立即删除。在发布里程碑或最终版本时,将删除工件的所有快照,并为下一个版本创建新的快照。
存储库浏览
里程碑和快照存储库都托管在Amazon 的 S3服务上,因此目录结构对人类来说不可读。要以人类可读的格式查看存储库,请使用S3Browse实用程序。
- 里程碑存储库:http://s3browse.com/explore/maven.springframework.org/milestone
- 快照存储库:http://s3browse.com/explore/maven.springframework.org/snapshot
仅将这些 URL 用于人类可读的查看。如果将它们用作 POM 的 URL,则会遇到错误。
工件源代码
另一个重要的改进是为所有版本添加了源工件。您会在里程碑存储库中注意到所有工件都部署了源代码。在我们以后的所有最终版本中也将如此。具体来说,从 Spring 2.5 版本开始,除了组合的 Spring 源代码外,每个模块也将有一个源工件。
Spring 快照
最终的改进尚未完善;Spring 的每晚快照。我很高兴地说,这即将完成。我仍在解决与Maven Ant 任务相关的最终问题,但这最终将开始显示,并且在出现时我会再次宣布。同样,您可以预期此功能最终将扩展到所有其他基于 ANT 的 Spring 产品组合项目,以便所有项目都将创建 Maven 快照以及里程碑。