我应该使用Maven存储库或Spring存储库中的工件

时间:2010-09-07 21:03:27

标签: spring maven-2 repository

我有一个使用Maven 2构建的应用程序,它具有来自SpringSource Enterprise Bundle Repository和Maven2公共存储库的重复依赖项。幸运的是,他们有相同的版本,但我仍然希望清理重复版本。

我应该支持Spring存储库还是Maven?

我的项目经常使用Spring(核心,Web流,安全性),所以我倾向于说我应该使用Spring repo,但我不需要我的jar文件符合OSGi,而长长的前缀名称让我感到烦恼一点。

重复示例:

com.springsource.org.apache.commons.loggingcommons-logging

org.springframework.corespring-core

2 个答案:

答案 0 :(得分:8)

  

我的项目经常使用Spring(核心,Web流,安全性),所以我倾向于说我应该使用Spring repo

您应该使用提供您要使用的工件版本的存储库:)如果您想使用OSGI兼容工件,请使用SpringSource Enterprise Bundle Repository(EBR)。如果你不关心OSGI,那么无关紧要,只要你不混合神器。那是SpringSource的official recommendation

就个人而言,我只会使用Maven Central(SpringSource 确实将最终版本发布到Central)。

如果您正在寻找RC,里程碑或SNAPSHOTS,您可以随时从Spring的Maven Central兼容存储库中获取它们:

  

获取Spring里程碑版本

     

里程碑和候选发布者可以   不能直接发布到Maven   中央,一般都会出版   与最终版本分开。   SpringSource拥有两个存储库   获得Spring里程碑。该   第一个应该用于   与Maven Central和   第二个与...一起   EBR。

     

从Maven Central Compatible Repository

获取里程碑      

从中获取Spring里程碑   Maven Central兼容的存储库,   将以下存储库添加到您的   .pom:

<repository>
    <id>org.springframework.maven.milestone</id>
    <name>Maven Central Compatible Spring Milestone Repository</name>
    <url>http://maven.springframework.org/milestone</url>
</repository>
     

...

     

获取每夜弹簧快照

     

Spring项目的快照是   每晚发布,允许用户   验证报告的问题   在下一个版本发布之前已经解决   像里程碑一样,有一个单独的   Maven Central兼容快照   存储库和EBR快照   库中。

     

从Maven Central Compatible Repository

获取快照      

获取Spring nightly快照   从Maven Central兼容   存储库,添加以下内容   存储库到.pom:

<repository>
    <id>org.springframework.maven.snapshot</id>
    <name>Maven Central Compatible Spring Snapshot Repository</name>
    <url>http://maven.springframework.org/snapshot</url>
</repository>

参考

答案 1 :(得分:0)

SpringSource存储库在Spring工件方面通常更新。所以我会把它添加到你的POM只是为了春天的罐子。除非你对OSGI兼容性感兴趣,否则我会抓住Maven central中的commons-logging之类的东西。