J'essaye de faire mon premier projet avec Spring 3.0 (et maven). J'utilise Spring 2.5 (et les versions préliminaires) dans de nombreux projets. Néanmoins, je suis un peu confus, quels modules je dois définir comme dépendances dans mon pom.xml. Je veux juste utiliser les fonctions principales du conteneur (beans, core, context, el).
J'avais l'habitude de faire ceci:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
</dependency>
Mais maintenant, je suis un peu confus, car il n'y a plus de module de printemps complet pour la version 3.0. J'ai essayé ce qui suit mais cela n'a pas fonctionné (certaines classes manquent).
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>3.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.0.0.RELEASE</version>
</dependency>
Toute aide serait appréciée!
java
spring
maven-2
dependencies
Nils Schmidt
la source
la source
Réponses:
Il y avait un très bon article sur le blog de printemps de Keith Donald détaillant comment obtenir des artefacts de printemps 3 avec Maven , avec des commentaires détaillant quand vous auriez besoin de chacune des dépendances ...
la source
Spring (de nos jours) facilite l'ajout de Spring à un projet en utilisant une seule dépendance, par exemple
Cela résoudra à
Consultez la page de documentation de Spring Framework pour plus d'informations.
la source
la source
Étant donné que ces questions semblent toujours susciter beaucoup de vues, il peut être utile de noter que pour Spring 4+, il est plus facile de commencer à utiliser
Spring Boot
et les POM de démarrage Spring Boot .En utilisant Spring Boot, il y a moins de dépendances à gérer (et donc moins de conflits), et la configuration d'un contexte Spring fonctionnel et bien intégré est beaucoup plus facile. Je le recommande fortement.
la source
Quelles classes manquent? Le nom de la classe lui-même devrait être un bon indice du module manquant.
Pour info, je sais que c'est vraiment pratique d'inclure le pot de printemps uber, mais cela pose vraiment des problèmes lors de l'intégration avec d'autres projets. L'un des avantages du système de dépendances est qu'il résoudra les conflits de version entre les dépendances.
Si ma bibliothèque dépend de spring-core: 2.5 et que vous dépendez de ma bibliothèque et de uber-spring: 3.0, vous avez maintenant 2 versions de spring sur votre classpath.
Vous pouvez contourner cela avec des exclusions, mais il est beaucoup plus facile de répertorier correctement les dépendances et de ne pas vous en préoccuper.
la source
Vous pouvez ajouter une dépendance de contexte de printemps pour les pots de printemps. Vous obtiendrez les pots suivants avec lui.
si vous souhaitez également des composants Web, vous pouvez utiliser la dépendance spring-webmvc .
Vous pouvez utiliser la version de votre choix. J'ai utilisé 5.0.5.RELEASE ici.
la source
Vous pouvez essayer ceci
la source
Utilisez une nomenclature pour résoudre les problèmes de version.
https://docs.spring.io/spring/docs/4.3.18.RELEASE/spring-framework-reference/html/overview.html#overview-maven-bom
la source