我有一个使用Maven 2构建的应用程序,它具有来自SpringSource Enterprise Bundle Repository和Maven2公共存储库的重复依赖项。幸运的是,他们有相同的版本,但我仍然希望清理重复版本。
我应该支持Spring存储库还是Maven?
我的项目经常使用Spring(核心,Web流,安全性),所以我倾向于说我应该使用Spring repo,但我不需要我的jar文件符合OSGi,而长长的前缀名称让我感到烦恼一点。
重复示例:
com.springsource.org.apache.commons.logging
和commons-logging
org.springframework.core
和spring-core
答案 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之类的东西。