java.lang.ClassNotFoundException: javax.transaction.TransactionManager
Problème
Dans le développement JPA ou Hibernate, il affiche le message d'erreur suivant:
Caused by: java.lang.ClassNotFoundException: javax.transaction.TransactionManager at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) … 23 more
Solution
Lejavax.transaction.TransactionManager est une classe à l'intérieur de la bibliothèque J2EE SDK «javaee.jar», il vous manque ce fichier jar dans le chemin de classe de votre projet.
1. SDK J2EE
Vous pouvez toujours obtenir lesjavaee.jar à partir dehttp://java.sun.com/javaee/. Téléchargez et installez le SDK sur votre ordinateur, lesjavaee.jar se trouvent dans le dossier «\ J2EE_SDK_FOLDER \ lib». Par exemple,
C:\Sun\SDK\lib\javaee.jar
Récupérez le fichierjavaee.jar et incluez-le dans le chemin de classe de votre projet.
2. Java.Net Repository
Vous pouvez également obtenir les «javaee.jar» sur java.net Maven
Java.Net http://download.java.net/maven/2/ javax javaee-api 6.0
Le fichier java.netjavaee.jar téléchargé ne contient aucun corps de méthode, voir ceci «http://www.example.com/maven/how-to-download-j2ee-api-javaee-jar-from-maven/ [comment obtenir javaee.jar de Maven] »pour plus de détails.