0

我正在我的 Web 应用程序中集成一个 Web 服务。Web 服务为我提供了一个 .dll 和 .jar 文件。我将 .dd 放在 /jre/bin 中,将 .jar 放在 /jre/lib 中。然后我开发了我的代码,并部署了应用程序。在开发过程中,我还在项目构建路径中包含了 .jar 文件。在通过tomcat运行它时,它给了我错误:

java.lang.UnsatisfiedLinkError: Native Library .dll 已经加载到另一个类加载器中

有人可以告诉我我哪里错了。我确实搜索了这个问题,但没有一个答案是明确的。

当我删除 .dll 或 .jar 文件时,我的程序无法找到它。我也尝试从我的外部库中删除它,但这也可以正常工作

请帮忙

谢谢, 阿克谢

4

2 回答 2

0

您不能两次加载同一个库。

将该类粘贴到 .WAR 文件下的 jar 文件中/lib/,它将与其他 .WAR 文件共享。

于 2012-10-26T09:42:21.037 回答
0

我遇到了这个问题并通过删除使用一个“.dll”的其他“.jar”文件来解决

如果您的项目和您的 tomcat/lib(并且可能在 jre/bin 中)中存在相同的 .jar 文件,并且所有这些“.jar”需要尝试获取一个资源,则会出现此问题。

我删除了所有 RxTxcomm.jar,除了在 tomcat/lib 中的一个。

就我而言,我在“myproject/lib”、“tomcat/lib”和“jre/lib”中有“RxTxcomm.jar”,而 rxtxserial.dll 在 jre/bin 中。

所以我的问题解决了。

于 2017-10-10T07:36:13.790 回答