Durant une mise à jour d’un projet interne, nous avons passé en revue l’ensemble des dépendances à mettre à jour sur un projet réalisé avec Spring Boot 3 et là … le drame, une erreur est apparue, après de mures recherches, c’est la mise à jour de Jakarta Persistence API en version 3.2 qui fait planter le projet
Et tout commence par une IllegalArgumentException
Voici la belle erreur que nous avons eu au démarrage de l’application :
Caused by: java.lang.IllegalArgumentException: methods with same signature getSchemaManager() but incompatible return types: [interface org.hibernate.relational.SchemaManager, interface jakarta.persistence.SchemaManager]
On peut voir que l’exception nous donne une piste … Jakarta et grâce à nos historiques de commit, nous avons pu voir que la version était passée de la 3.1.0 à la 3.2.0.
Nous descendons la version en 3.1.0, relançons et tout fonctionne correctement.