Spring 3.0.5.RELEASE依赖项信息

时间:2011-01-07 18:45:03

标签: java spring migration

我们将从Spring 2.0.8迁移到3.0.5版本的Spring。我们使用maven但我们不希望依赖它来为我们提取所有依赖项。感谢我能否得到以下问题的答案

1)我在哪里可以下载包含spring的所有依赖项的zip文件?我发现虽然可用于3.0.2

,但无法下载3.0.5 RELEASE

2)为什么依赖工件名称包含“com.springsource”前缀,即使jar来自第三方供应商(例如javax.transaction来自Oracle

<dependency>
   <groupId>javax.transaction</groupId>
   <artifactId>com.springsource.javax.transaction</artifactId>
   <version>1.1.0</version>
   <scope>test</scope>
</dependency>

3)是否有一个文本文件,其中spring列出了所有外部依赖项和确切的版本信息。

4)Spring以某种方式定制的外部开源jar文件是哪些。例如在2.x spring中定制了cglib并将其命名为cglib-nodep

5)spring正在使用哪个xml解析器实现版本?

注意:我已在他们的论坛上问过这个问题,但到目前为止还没有得到答复。所以在这里发帖,看看我是否可以从SO

获得建议

2 个答案:

答案 0 :(得分:5)

为什么你不想依赖maven来为你拉动所有的依赖?这是我们使用/爱Maven的原因之一,不是吗?

回答你的问题;

  1. 我认为不再存在,但是猜测网址并不是那么难。只需编写一个简单的脚本即可为您下载。
  2. 这是因为这些是同一第三方库的osgified版本。这就是为什么他们使用不同的artifactId。他们还维持Enterprise Bundle Repository为他们服务。简而言之,它们都是OSGI捆绑包,这也是版本不同的原因。
  3. 您可以检查工件的pom文件。 BTW他们不会改变osgified库的版本,你可以猜测。如果是com.springsource.org.apache.commons.lang:coommons-lang:2.4.0,那么它实际上是commons-lang:commons-lang:2.4
  4. 的osgified版本
  5. 它不是由spring完成的,它只是没有依赖关系的cglib。如果您不希望依赖项可以传递给工件,那么可以使用cglib-nodep。
  6. 他们不依赖于特定的实现,您可以安全地使用不同的实现。他们对不同的XML解析器有广泛的支持,请查看文档。

答案 1 :(得分:1)

Umut回答了你所有的问题。

2)您可以在博客Obtaining Spring 3 Artifacts with Maven中找到补充答案 - 它显示了如何获得OSGIfied和非OSGIfied版本。