Jarros mínimos para a injeção de dependência da primavera 3.0
-
27-09-2019 - |
Pergunta
similarmente a Esta pergunta sobre uma versão anterior da primavera, quais são as dependências mínimas necessárias para um aplicativo usar a mola 3.0 injeção de dependência apenas? O contexto do aplicativo será configurado apenas pelo XML. A primavera depende de uma estrutura de registro, então suponha que eu já inclua estes frascos para registro:
- jcl-over-slf4j.jar
- Logback-Classic.jar
- logback-core.jar
- slf4j-api.jar
Solução
Conforme declarado em outra resposta, Maven é o verdadeiro caminho. Se; No entanto, você escolhe se desviar e depois com base na seção "1.2.1 contêiner de núcleo" doReferência da primavera Eu acredito que estes são os frascos mínimos para a funcionalidade principal da primavera:
- 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
Editado: classificou a lista, usando a formatação do wiki.
Atualizado para a primavera 3.2: Parece que o ASM não faz parte da distribuição 3.2. Abaixo está a lista da primavera 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
Outras dicas
A melhor maneira-e confiável-de estabelecer isso é criar um projeto MAVEN e adicionar dependência para o núcleo de mola, spring-bundle e primavera. Quando você construir/instalar este projeto, o Maven faz o necessário.
YMMV, mas eu faria o seguinte:
Primeiro, importe o nascimento da primavera na seção de gerenciamento de dependência, para garantir uma versão de dependência da linha de base:
<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>
Em seguida, na seção de construção/dependência, importar feijões, contexto e núcleo, e o EL, se você planeja configurar a Spring via XML Configuration (ou usar o escopo do teste se você planeja usar apenas a configuração XML do Spring para o seu chicote de testes.)
Observação: Este exemplo é com 3.2.x. Se você precisar usar a primavera antes de 3.2.x, precisará incluir o ASM explicitamente. Uma possibilidade é usar um perfil ativado apenas para versões da mola abaixo de 3.2.x.
<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>