2014-06-24 3 views
0

Je développe une application web avec JSF en utilisant Jboss Tools, Hibernate, Mysql, Maven et Eclipse.Comment supprimer hibernate-jpa-2.0 de JBoss

J'ai déjà ajouté la dépendance hibernate-core dans maven.

Mais lorsque je tente de faire un test de conection j'obtenir cette erreur:

java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index; 

Et je compris que la dépendance maven mise en veille prolongée est mise en veille prolongée JPA-2.1, mais JBoss a mise en veille prolongée JPA-2.0, c'est une erreur d'incompatibilité. Comment puis-je supprimer hibernate-jpa-2.0 de la bibliothèque JBoss?

+0

Vous devriez plutôt utiliser JPA fourni par JBoss (à moins bien sûr que vous besoin de quelque chose en particulier de 2,1). Il serait donc préférable de corriger les dépendances pour pointer sur jpa plutôt que de supprimer jboss one. Sinon, vous devrez emballer le fournisseur jpa distinct avec votre application, au lieu d'utiliser potentiellement plus testé. – Gas

Répondre

0

Il y a deux options:

  1. Vous pouvez utiliser dependencyManagement (docs) pour remplacer les numéros de version que votre projet doit utiliser. Créez une dépendance pour hibernate-jpa-2.1 là-dedans et (tant que groupId et artifactId sont les mêmes), la version ici devrait remplacer les versions dans n'importe quel POM dépendant.

  2. Utilisez exclusions pour se débarrasser des dépendances transitoires indésirables (docs)