2009-09-02 6 views
2

La version actuelle d'Hibernate est 3.26 et Spring est 2.54 lorsque je crée un projet Spring et Hibernate basé sur l'Archetype par défaut. Comment puis-je faire en sorte que Maven prenne les versions les plus récentes? J'ai essayé de changer ma version de printemps de 2.5.4 à 2.5.6 mais 2.5.4 était toujours inclus dans le fichier de guerre généré.Mise à jour de l'archétype Spring/Hibernate dans Maven?

Répondre

0

Run mvn dependency:tree et voir pourquoi l'ancienne version est toujours tiré dans.

1

Si vous utilisez objectif tree de la dépendance-plugin vous serez en mesure de voir ce que les artefacts introduisent une dépendance transitive sur les versions non désirées. Pour s'assurer qu'ils ne sont pas inclus dans votre guerre, vous pouvez alors exclude ces dépendances.

Dire que certains la dépendance directe foo introduit le printemps 2.5.4 dépendance, la configuration suivante forcerait Maven à ne pas résoudre cette dépendance transitive:

<dependency> 
    <groupId>name.seller.rich</groupId> 
    <artifactId>foo</artifactId> 
    <version>1.0</version> 
    <exclusions> 
    <exclusion> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring</artifactId> 
    </exclusion> 
    </exclusions> 
</dependency> 

ensuite déclarer la version 2.5.6 dans votre POM signifie que votre version requise sera incluse:

<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring</artifactId> 
    <version>2.5.6</version> 
</dependency>