JBoss:Native Library sqljdbc_auth.dll已经加载到另一个类加载器中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JBoss:Native Library sqljdbc_auth.dll已经加载到另一个类加载器中相关的知识,希望对你有一定的参考价值。

更新:jboss论坛上这个未解答的问题,是描述我确切问题的另一种方式:https://developer.jboss.org/thread/199888

原帖:我正在尝试对部署到JBoss 7.x的Web应用程序进行集成身份验证工作。通过将sqljdbc_auth.dll复制到Windows / System32或{java location} / jre / bin,我已成功完成了一项工作。但是,如果两个或多个应用程序正在运行,我将收到一个错误说Native Library sqljdbc_auth.dll already loaded in another classloader

我知道为什么会发生这种错误,并且this question and answer有一个Tomcat解决方案。但我不能让它在JBoss中运行。实际上,将dll放在jboss / bin文件夹中会产生与以前完全相同的错误:

Failed to load the sqljdbc_auth.dll cause : 
Native Library C:\Jboss-eap-7.0\bin\sqljdbc_auth.dll already loaded in another classloader

如何配置JBoss和/或放置sqljdbc_auth.dll

我的部署不在任何模块或命名服务器实例下。我认为它简称为独立

我也尝试过这种方法,但我无法弄清楚在JBoss目录中放置jar文件的位置。我尝试将其部署为类似Web应用程序的部署,并尝试将其复制到lib文件夹中,在独立下。没有成功。

编辑:

我正在尝试实现一个全局模块,根据发布的答案,但现在得到以下错误:

14:00:25,333 ERROR [stderr] (ServerService Thread Pool -- 121)
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver from 
[Module "deployment.MyWebapp.war:main" from Service Module Loader]
答案

我假设你必须为sql jdbc驱动程序创建一个这样的模块。

<module xmlns="urn:jboss:module:1.3" name="com.microsoft.sqlserver">
  <resources>
    <resource-root path="sqljdbc.jar"/>
  </resources>
  <dependencies>
    <module name="javax.api"/>
    <module name="javax.transaction.api"/>
  </dependencies>
</module>

并将此模块添加为每个已部署应用程序的依赖项。

我建议通过编辑这样的standalone.xml文件将此模块声明为全局模块。

<subsystem xmlns="urn:jboss:domain:ee:4.0">
            <global-modules>
                <module name="com.microsoft.sqlserver" slot="main"/>
                 .
                 .
            </global-modules>
.
.
</subsystem>

并从您的各个应用程序中删除对此模块的依赖性。

以上是关于JBoss:Native Library sqljdbc_auth.dll已经加载到另一个类加载器中的主要内容,如果未能解决你的问题,请参考以下文章

react-native-testing-library:如何使用 act 测试 useEffect

NativeBase 内容未在 Jest 中使用 react-native-testing-library 呈现

带有测试 react-native-testing-library 和 jest-native 的世博会应用程序“没有导出成员 'toHaveProp”

使用 Jest 运行 testing-library/react-native 时 RNEncryptedStorage 未定义

编译hadoop 的native library

使用 Jest 和 @testing-library/react-native 测试 React Native 项目时出现“SyntaxError: Cannot use import stateme