11

与这个关于早期 Spring 版本的问题类似,应用程序仅使用 Spring 3.0依赖注入所需的最低依赖是什么?应用程序上下文将仅由 XML 配置。Spring 依赖于一个日志框架,所以假设我已经包含了这些 JAR 用于日志:

  • jcl-over-slf4j.jar
  • logback-classic.jar
  • logback-core.jar
  • slf4j-api.jar
4

3 回答 3

16

如另一个答案所述,maven 是真正的路径。如果; 但是,您选择迷路,然后根据 Spring Reference的“1.2.1 Core Container”部分,我相信这些是核心弹簧功能的最小罐子:

  • org.springframework.asm-3.0.4.RELEASE.jar
  • org.springframework.beans-3.0.4.RELEASE.jar
  • org.springframework.context-3.0.4.RELEASE.jar
  • org.springframework.core-3.0.4.RELEASE.jar
  • org.springframework.expression-3.0.4.RELEASE.jar

已编辑:使用 wiki 格式对列表进行排序。

为 Spring 3.2 更新:似乎 asm 不是 3.2 发行版的一部分。以下是 Spring 3.2 的列表:

  • spring-beans-3.2.0.RELEASE.jar
  • spring-context-3.2.0.RELEASE.jar
  • spring-core-3.2.0.RELEASE.jar
  • spring-expression-3.2.0.RELEASE.jar
于 2010-11-05T21:51:14.013 回答
5

建立它的最佳且可靠的方法是创建一个 Maven 项目并添加对 spring-core、spring-bundle 和 spring-context 的依赖项。当你构建/安装这个项目时,maven 会做必要的。

于 2010-10-29T16:45:58.850 回答
0

YMMV,但我会执行以下操作:

首先,在依赖管理部分导入 Spring BOM,以确保基线依赖版本:

<properties>
    <spring.version>3.2.6.RELEASE</spring.version>
</properties>
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-framework-bom</artifactId>
            <version>${spring.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
     </dependencies>
 </dependencyManagement>

然后,在 build/dependency 部分,如果您打算通过 xml 配置配置 Spring(或者如果您只打算将 Spring xml 配置用于您的测试工具,则使用测试范围)导入 beans、context 和 core 以及 EL。

注意:此示例适用于 3.2.x。如果需要在 3.2.x 之前使用 Spring,则需要显式包含 asm。一种可能性是使用仅针对低于 3.2.x 的 Spring 版本激活的配置文件。

<build>
    <dependencies>
       <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <!-- inlines asm since 3.2.x -->
       </dependency>
       <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
       </dependency>
       <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
       </dependency>
       <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-expression</artifactId>
            <scope>test</scope><!-- or compile/provided if used beyond testing -->
       </dependency>
    </dependencies>
</build>
于 2019-05-06T17:38:01.137 回答