JAR ne parvient pas à charger com.microsoft.sqlserver.jdbc.sqlserverdriver
Il semble y avoir un certain nombre de questions similaires sur ce point, mais aucun n'a été en mesure de me fournir toute l'aide. Je suis en cours d'exécution de Microsoft pilote JDBC sur SQL Server (je suis en utilisant sqljdbc4.jar
) et à l'aide de l'authentification intégrée pour accéder à ma base de données. L'extrait de code pour la connexion sont comme suit:
String connectionUrl="jdbc:sqlserver://servername:1433;integratedSecurity=true;";
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con = DriverManager.getConnection(connectionUrl);
}//catch, etc...
Quand je lance le projet en Eclipse, il démarre sans problème. Quand je lance Maven installation propre et emballer dans un .jar, cependant, j'obtiens l'erreur:
java.lang.ClassNotFoundException: Failure to load: com.microsoft.sqlserver.jdbc.SQLServerDriver
at launch.JarClassLoader.loadClass(JarClassLoader.java:964)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at ui.SearchWindow$1.run(SearchWindow.java:97)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
J'ai tenté les solutions posté dans un autre thread, j'ai un Système de CLASSPATH
variable qui dirige à la .jar
et il est situé dans construire mon parcours et mon runtime classpath. Peut-être le problème, c'est me regarder en face. Ma meilleure supposition est que c'est lié à Maven, mais comment puis-je résoudre ce problème?
Aussi, s'il vous plaît laissez-moi savoir si j'ai besoin de clarifier tous les points; je serais plus qu'heureux de le faire.
J'ai ajouté manuellement à l'Éclipse buildpath. Cela devrait-il être ajouté comme une dépendance?
OriginalL'auteur David G | 2013-06-24
Vous devez vous connecter pour publier un commentaire.
Dans votre commentaire, vous confirmez que vous avez ajouté manuellement à la construction du chemin et de ne pas le POM maven. Vous avez vraiment besoin d'ajouter une dépendance, autrement Maven ne savent pas à ce sujet lors de la construction.
Il n'y a qu'un seul problème: le pilote JDBC SQL Server n'est pas sur Maven Central, de sorte que vous devez ajouter vous-même à votre dépôt local (ou de votre entreprise à l'échelle du référentiel).
À ajouter à votre dépôt local, de la télécharger et de l'exécuter:
Et ajouter la dépendance à la POM:
Voir aussi:
OriginalL'auteur Mark Rotteveel