我们正在从 spring 2.0.8 迁移到 spring 3.0.5 版本。我们使用 Maven,但我们不想依赖它来为我们提取所有依赖项。如果我能得到以下问题的答案,我将不胜感激
1) 在哪里可以下载包含 spring 所有依赖项的 zip 文件?我发现 3.0.5 RELEASE 无法下载,但 3.0.2 可用
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的建议
最佳答案
为什么你不想依赖 Maven 来为你拉取所有依赖项?这是我们使用/喜爱 Maven 的原因之一,不是吗?
回答您的问题;
- 我认为已经不存在了,但是猜测网址并不难。只需编写一个简单的脚本即可为您下载它们。
- 这是因为这些是相同第三方库的操作系统版本。这就是为什么他们使用不同的artifactId。他们还维护 Enterprise Bundle Repository为他们服务。简而言之,它们都是 OSGI bundle ,这也是版本不同的原因。
- 您可以检查工件的 pom 文件。顺便说一句,您可以猜到,他们没有更改 osgified 库的版本。如果是
com.springsource.org.apache.commons.lang:commons-lang:2.4.0
,那么它实际上是commons-lang:commons-lang:2.4的osgified版本
。 - 它不是由 spring 完成的,它只是没有依赖项的 cglib。如果您不希望依赖项可传递地用于您的工件,您可以使用 cglib-nodep。
- 它们不依赖于特定的实现,您可以安全地使用不同的实现。他们对不同的 XML 解析器有广泛的支持,请查看文档。
关于java - Spring 3.0.5.RELEASE 依赖信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4629074/