pas d'authentification mssql-jdbc-8.2.1.x64 en java.bibliothèque.chemin
J'essaie de me connecter à SQL DB dans mon projet Maven, mais continuez à obtenir l'exception suivante:
"com.Microsoft.sqlserver.jdbc.SQLServerException: Ce pilote n'est pas configuré pour l'authentification intégrée. ...", "..Causé par: java.lang.UnsatisfiedLinkError: pas mssql-jdbc_auth-8.2.1.x64 en java.bibliothèque.chemin....".
J'ai essayé des suggestions de pas de sqljdbc_auth en java.bibliothèque.chemin et UnsatisfiedLinkError: pas de sqljdbc_auth dans Java.bibliothèque.path mais cela n'a pas fonctionné pour moi.
J'ai mis le chemin vers sqljdbc_auth.dll dans:
Variable de CHEMIN global Capture d'écran de la variable de CHEMIN global
C:\Program Les fichiers \ Java \ jdk-13.0.2 \ bin C:\Program Fichiers \ Java\jdk-13.0.2 \ bin capture d'écran
Pom.xml (comme configuration dans la dépendance du plugin surefire) pom.capture d'écran xml
Et voici mon code:
public class JDBC {
@Test
public void test() throws SQLException, ClassNotFoundException {
String UserName="sa";
String Password="Error911";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String DB_URL ="jdbc:sqlserver://localhost:1433;databaseName=QADB;integratedSecurity=true;";
//OR by using ip
//DB_URL ="jdbc:sqlserver://192.168.0.104;databaseName=QADB;integratedSecurity=true;";
Connection con = DriverManager.getConnection(DB_URL, UserName, Password);
}
}
Et le exception dans la sortie de la console:
Com.Microsoft.sqlserver.jdbc.SQLServerException: Ce pilote n'est pas configuré pour l'authentification intégrée...........................
...Causé par: java.lang.UnsatisfiedLinkError: pas mssql-jdbc_auth-8.2.1.x64 en java.bibliothèque.chemin: [C:\Users\Automation\Microsoft Pilote JDBC 6.0 pour SQL Serveur \ sqljdbc_6. 0\enu\auth \ x64].. ....
3 answers
Il semble que vous n'ayez pas le fichier mssql-jdbc_auth-8.2.1.x64
dans votre chemin de classe.
Pour autant que je sache que ce fichier est inclus dans le pilote Microsoft SQL JDBC (dossierenu/auth/x64
):https://docs.microsoft.com/en-us/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-ver15
Vous pouvez ajouter ce fichier à votre chemin de classe (par exemple, copiez-le dans: C:\Program Files\Java\jdk-13.0.2\bin
) et corrigez l'erreur.
, j'ai eu ce même problème, et il m'a fallu des heures pour comprendre.
Assurez-vous de copier le
mssql-jdbc_auth-8.2.1.x64
fichier et non l'sqljdbc_xa.dll
fichier dans leC:\Program Files\Java\jdk-13.0.2\bin folder
. Selon la capture d'écran de votre dossier bin, je ne pense pas que ce soit le problème.Redémarrez Eclipse et exécutez-le à nouveau. Je copiais le fichier dans le dossier bin avec eclipse en cours d'exécution et je n'ai eu aucun succès. Ce n'est qu'après avoir redémarré eclipse que le pilote a commencé à fonctionner correctement.
Suivez simplement les étapes ci-dessous et il s'avérera sûrement corriger "no mssql-jdbc_auth-8.2.1.x64 en java.bibliothèque.chemin " ainsi que "JDBC SQLServerException:" Ce pilote n'est pas configuré pour l'authentification intégrée " problème.
-
Télécharger
sqljdbc_<version>_enu.zip
depuis https://docs.microsoft.com/en-us/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-ver15 selon votre version Java. -
Décompressez-le, lisez installer.txt et faire comme il dit
-
Coller
mssql-jdbc_auth-8.2.2.x64.dll
(présent dans le chemin -> C:/Program Fichiers / Microsoft JDBC PILOTE 8.2 pour SQL Server/sqljdbc_/enu/auth / x64 à Java / jre8 / bin et vers Java/jre8 / lib