Question: We are migrating from spring 2.0.8 to 3.0.5 RELEASE of spring. We use maven but we doesn't want to depend on it to pull all the dependencies for us. Appreciate if I can get answers to below questions

1) Where can i download the zip file with all the dependencies of spring? I see this is not available to download for 3.0.5 RELEASE though it is available for 3.0.2

2) Why does the dependency artifact names include "com.springsource" prefix even though the jar's are from third party vendors (for e.g. javax.transaction is from Oracle

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

```

3) Is there a text file where spring lists all its external dependencies with exact version info.

4) Which are the external open source jar files that spring has customized in some way. for e.g. In 2.x spring customized cglib and named it as cglib-nodep

5) Which xml parser implementation version is being used by spring?

***Note:** I already asked this question on their forum but didn't get reply till now. So posting it here to see if I can get suggestions from SO*

Answer: 
Why don't you want to depend on maven for pulling all the dependencies for you? It is one of the reasons why we use/love Maven, isn't it?

Answers to your questions;

1. I don't think there is one anymore, however it is not so hard to guess the urls. Just write a simple script to download them for you.
2. It is because these are the osgified versions of the same third party libraries. That is why they are using different artifactId's. They are also maintaining an [Enterprise Bundle Repository](https://ebr.springsource.com/repository/app/) to serve them. In short they are all OSGI bundles, that is also why the versions are different.
3. You can check the pom files of the artifacts. BTW they are not changing the versions of the osgified libraries, you can guess. If it is `com.springsource.org.apache.commons.lang:coommons-lang:2.4.0`, then it is actually the osgified version of `commons-lang:commons-lang:2.4`.
4. It is not done by spring, it is just the cglib without dependencies. If you don't want the dependencies to be transitively available for your artifact, you use cglib-nodep.
5. They don't depend on a specific implementation, you can safely use different implementations. They have a wide support for different XML parsers, check the documentation.
Umut answerd all your questions right.

2) You can find the compleate answer in there blog [Obtaining Spring 3 Artifacts with Maven](http://blog.springsource.com/2009/12/02/obtaining-spring-3-artifacts-with-maven/) -- It shows how you can get the OSGIfied and the not OSGIfied version.