如何在我的Web应用程序中加载自定义dll文件?我尝试了以下方法,但失败了.
system32文件夹中所有必需的dll 并尝试在Servlet构造函数中加载其中一个System.loadLibrarytomcat_home/shared/lib和中复制所需的dlltomcat_home/common/libWEB-INF/libweb应用程序中我正在尝试连接到 Maven 项目中的 SQL DB,但不断出现以下异常:
“com.microsoft.sqlserver.jdbc.SQLServerException:此驱动程序未配置为集成身份验证。...”,“..引起:java.lang.UnsatisfiedLinkError:java中没有mssql-jdbc_auth-8.2.1.x64。库.路径......”。
我已经尝试过no sqljdbc_auth in java.library.path和UnsatisfiedLinkError: no sqljdbc_auth in java.library.path 的建议,但它对我不起作用。
我已将 sqljdbc_auth.dll 的路径放入:
全局 PATH 变量全局 PATH 变量屏幕截图
C:\Program Files\Java\jdk-13.0.2\bin C:\Program Files\Java\jdk-13.0.2\bin 截图
pom.xml(作为surefire插件依赖项中的配置) pom.xml截图
这是我的代码:
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);
}
}
Run Code Online (Sandbox Code Playgroud)
以及控制台输出中的异常:
com.microsoft.sqlserver.jdbc.SQLServerException:此驱动程序未配置为集成身份验证.........................................
...引起原因:java.lang.UnsatisfiedLinkError:java.library.path中没有mssql-jdbc_auth-8.2.1.x64:[C:\ Users \ Automation \ Microsoft JDBC Driver …
我创建了一个java应用程序的.jar,当我尝试从cmd运行.jar时,我收到一个错误.
我一直在寻找并找到很多例子,但没有人为我工作.我将java.library.path设置为目录'sqljdbc_auth.dll',就像我在这里看到的那样但错误是连续的.
http://www.linglom.com/images/howto/netbeans/sqlserver/part3/8.png
我用命令运行我的java应用程序:java -Djava.library.path ="my dll path"并给出:
PS C:\Users\User> java -Djava.library.path="C:\Users\User\Desktop\Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc
_4.0\ptb\auth\x64"
Error: Could not find or load main class .library.path=C:\Users\User\Desktop\Microsoft JDBC Driver 4.0 for SQL Server
\sqljdbc_4.0\ptb\auth\x64
Run Code Online (Sandbox Code Playgroud)
我真的不知道如何解决这个问题.我一直在寻找很多时间,但没有任何作用.请有人帮助我.
谢谢
WARNING: Failed to load the sqljdbc_auth.dll cause : no sqljdbc_auth in java.library.path
com.microsoft.sqlserver.jdbc.SQLServerException: This driver is not configured for integrat
ectionId:0481a2ee-4ac4-4fd3-89cd-58aad1696fe4
at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.j
at com.microsoft.sqlserver.jdbc.AuthenticationJNI.<init>(AuthenticationJNI.java:60)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:
at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.
at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServe
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnect
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnecti
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.jav
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012) …Run Code Online (Sandbox Code Playgroud)