L'import javax.la persistance ne peut pas être résolu
Je suis actuellement en train de travailler sur un projet qui nécessite l'EntityManager EntityManagerFacotry et la Persistance du javax.la persistance de package. Il semble être pour le service de base de données, mais le code actuel n'est pas très bien documenté. En cherchant sur google, il semble qu'il devrait y avoir un fichier xml qui vient avec cela, mais il n'en est pas un de ceux qui. Je suppose que ma question est simplement de savoir comment dois-je faire de ces suspens importations en aller? Dois-je ajouter un autre pot pour le build path? Il semble que je n'aurais pas dû car il a été autour depuis 1.5.
Toute aide est grandement appréciée.
- Vous aurez en effet besoin d'un fichier jar avec l'API JPA. Mais plus important encore, vous aurez besoin d'une mise en œuvre de ces JPA interfaces (Hibernate, EclipseLink, OPenJPA, etc.). Franchement, essayez d'utiliser JPA sans même savoir ce que c'est, et de mise en œuvre qui a été choisie, est un chemin sûr vers la catastrophe. Si vous héritez d'un code, il devrait venir avec un processus de construction, à tout le moins.
- hmm... eh bien je suis d'accord.
- Intéressant @JB Nizet, le problème se produit pour moi dans mon Google App Engine, de l'intégration et à la suite de l'étape par étape les instructions que sont moyen de sortir de date. Le module d'intégration est censé être livré si l'Application Android ne pas avoir à traiter avec les détails. Il n'y a aucune mention de la JPA, et il est fait mention que MAVEN permet de télécharger et d'inclure tous les dépendants SDK fichiers, etc.
Vous devez vous connecter pour publier un commentaire.
hibernate-distribution-3.6.10.Final\lib\jpa : Ajouter ce pot pour résoudre le problème. Il est présent dans le dossier lib à l'intérieur que vous avez un dossier appelé jpa ---> à l'intérieur que vous avez à hibernate jpa-2.0-1.0.1.Final jar
Oui, vous aurez probablement besoin d'ajouter un autre pot ou de la dépendance
javax.persistence.*
fait partie de la Java Persistence API (JPA). C'est seulement une API, vous pouvez la considérer comme semblable à une interface. Il existe de nombreuses implémentations de JPA, et ce réponse donne une très bonne élaboration de chacun, ainsi que de l'utiliser.Si votre
javax.persistence.*
d'importation ne peut pas être résolu, vous aurez besoin de fournir le pot qui implémente JPA. Vous pouvez le faire soit en téléchargeant manuellement (et de l'ajouter à votre projet) ou par l'ajout d'une déclaration à la dépendance de l'outil de gestion (par exemple, le Lierre/Maven/Gradle). Voir ici pour la EclipseLink de mise en œuvre (l'implémentation de référence) sur le repo Maven.Après avoir fait cela, votre importations devraient être résolus.
Voir aussi ici pour ce qui est JPA sur. Le xml que vous faites référence pourrait être
persistence.xml
, ce qui est expliqué à la page 3 de la liaison.Cela étant dit, vous pourriez juste être pointant vers la mauvaise cible d'exécution
Si je me souviens bien, vous n'avez pas besoin de fournir une implémentation JPA si vous êtes de la déployer dans un serveur d'applications JavaEE comme JBoss. Voir ici "Notez que vous n'avez généralement pas besoin lorsque vous déployez votre application dans une application Java EE 6 serveur (comme JBoss 6 par exemple).". Essayez de changer de cible de votre projet d'exécution.
Si votre projet a été mis au point pour Tomcat, tandis que votre à distance repo suppose un serveur JavaEE, cela pourrait être le cas. Voir ici pour la différence entre Tomcat et JBoss.
Edit: j'ai changé mon projet de point de GlassFish au lieu de Tomcat et
javax.persistence.*
résolu fine sans aucune explicite JPA dépendance.Si quelqu'un est à l'aide de Maven, vous aurez besoin d'ajouter la dépendance dans le POM.XML fichier. La dernière version de ce post est ci-dessous:
Je suis tombé sur cette même question, et réalisé que, depuis que je suis à l'aide de spring boot, tout ce que je devais faire pour résoudre le problème est d'ajouter la dépendance suivant:
Ma solution a été de sélectionner les profils maven j'avais défini dans mon pom.xml à qui j'avais déclaré la veille prolongée dépendances.
CTRL + ALT + P
dans eclipse.Dans mon projet, j'ai été confronté à ce problème et beaucoup d'autres parce que dans mon pom-je avoir différents profils pour soutenir Glassfish 3, Glassfish 4 et aussi WildFly j'ai donc differet versions de Hibernate par conteneur, ainsi que les différentes Java compilation des cibles et ainsi de suite. La sélection de l'actif des profils maven résolu mon problème.
Si vous utilisez Hiberner comme une implémentation JPA et vous n'êtes pas à l'aide de Maven/Gradle, le moyen le plus simple est de télécharger l'ensemble au lieu de jar fichier un par un.
Aller http://hibernate.org/orm/downloads/ et télécharger la dernière version de bibliothèque, d'en extraire le pot de l'
required
dossier.Dans de nouveaux hibernate pots, vous pouvez trouver le nécessaire jpa fichier sous "mise en veille prolongée-recherche-5.8.0.Final\dist\lib\fourni\hibernate jpa-2.1-api-version 1.0.0.Finale". Vous devez ajouter ce fichier jar dans votre projet java build path. Ce sera très probablement résoudre le problème.
Si vous utilisez gradle avec spring boot et spring JPA puis ajouter le dessous de la dépendance dans la construction.gradle fichier
dépendances {
compiler groupe: 'org.springframework.boot', nom: 'le printemps-amorçage-starter-data-jpa", version: '2.1.3.LIBÉRATION"
}