在独立应用中使用弹簧所需的最小罐数是多少?

fre*_*dev 2 java spring dependency-injection maven spring-3

他我在独立应用程序中使用spring进行依赖注入,MessageSourcePropertyPlaceHolder支持,Hibernate/JDBC支持,单元测试,我想知道上述要求所需的最小罐子是什么,如果我可以排除一些罐子或依赖关系形式我目前的配置,因为我不需要应用程序大小,因为它是一个独立的应用程序,我需要尽可能应用程序大小,这是我现在使用的依赖项:

<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-expression</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aop</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context-support</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-oxm</artifactId>
            <version>${spring.version}</version>
        </dependency>       

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>${spring.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>  
            <groupId>org.springframework</groupId>  
            <artifactId>spring-asm</artifactId>  
            <version>${spring.version}</version>  

        </dependency>
Run Code Online (Sandbox Code Playgroud)

更新:

最小化依赖关系后:

  1. 弹簧核心.
  2. 弹簧豆.
  3. 春天上下文.
  4. 弹簧上下文的支持.
  5. 弹簧表达.
  6. 弹簧JDBC.
  7. 弹簧ORM.
  8. 冬眠-的EntityManager.
  9. 验证的API.
  10. 冬眠验证器.
  11. JUnit的.
  12. 共享记录.
  13. SLF4J-简单.
  14. log4j的.
  15. 德比.
  16. CGLIB.

我仍然看到一些罐子,我不确定它们是否对我的要求很重要:

  1. 激活1.1.jar
  2. ANTLR-2.7.6.jar
  3. aopalliance-1.0.jar
  4. ASM-3.3.1.jar
  5. 公地集合-3.1.jar
  6. dom4j的-1.6.1.jar
  7. Javassist进行-3.9.0.GA.jar
  8. JMS-1.1.jar
  9. 邮件1.4.jar
  10. 弹簧AOP-3.0.5.RELEASE.jar
  11. 弹簧-ASM-3.0.5.RELEASE.jar
  12. 弹簧-TX-3.0.5.RELEASE.jar
  13. XML的API-1.0.b2.jar

请告知我是否应该从中排除一些罐子.

Rag*_*ram 6

某些传递依赖关系可能未被使用,但没有自动方法来确定这一点.当您收到错误时,您可以排除所有传递依赖项(使用排除标记),构建/运行应用程序并继续添加适当的依赖项.其中一些将无法编译,其他人在运行时失败应用程序.