Leadtools.RasterException:本机库 Ltkrnx.dll 已在另一个类加载器中加载

安德烈·契诃维奇

我面临的问题:

本机库 Ltkrnx.dll 已加载到另一个类加载器中

在重新部署应用程序(tomcat 8 服务器)期间。

我还添加了检查,但这对我没有帮助。

private void loadLibrary(LTLibrary library) {
    if (!Platform.isLibraryLoaded(library)) {
        Platform.loadLibrary(library);
    }
}

引起:leadtools.RasterException: Native Library C:\LEADTOOLS 20\Bin\CDLL\x64\Ltkrnx.dll 已经在另一个类加载器中加载

LEADTOOLS 支持

您是否在 2 个不同的 Web 应用程序中使用 LEADTOOLS?如果是,以下答案可能会帮助您解决问题:java.lang.UnsatisfiedLinkError: Native Library XXX.so already loaded in another classloader

由于这个问题是关于 OpenCV,而不是 LEADTOOLS,我将在这里引用相关部分(非常轻微的编辑):

现在有一个限制,即只能在一个类加载器中加载本机库。Web 应用程序使用它们自己的类加载器,因此如果一个 Web 应用程序加载了本机库,另一个 Web 应用程序就不能这样做。因此加载本机库的代码不能放在 webapp 目录中,而必须放在容器(Tomcat)共享目录中。当您有一个用上面通常的模式编写的类(使用类的静态初始化程序中的 loadLibrary)时,将包含该类的 jar 放在共享目录中就足够了。但是,在 Web 应用程序代码中使用 .. loadLibrary 调用时,本机库仍将在“错误”的类加载器中加载,并且您将收到 UnsatisfiedLinkError。

为了使“正确”的类加载器加载本机库,您可以创建一个小类,其中包含一个只执行 loadLibrary 的静态方法。将这个类放在一个额外的jar 中,并将这个jar 放在共享的Tomcat 目录中。然后在 Web 应用程序中,使用对新静态方法的调用替换对 System.loadLibrary 的调用。这样,.. 本地库的类加载器将匹配,并且可以初始化本地方法。

如果您的情况不同,或者那里的建议对您没有帮助,请将以下信息发送至 [email protected],我们的支持团队将与您一起找出问题:

  1. 这个问题的细节(你得到的例外,LEADTOOLS 20 版,64 位,Tomcat 8)
  2. 您的 LEADTOOLS 产品序列号(请勿在此处发布!)。如果您仍在评估并且没有序列号,请提及。
  3. 到目前为止,您为解决问题所做的尝试以及给您带来的结果(例如,上面提到的答案)。
  4. 有关您的操作系统、IDE 或一般编程环境的其他详细信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

UnsatisfiedLinkError:本机库sunmscapi.dll已在另一个类加载器中加载

来自分类Dev

UnsatisfiedLinkError:本机库C:\ Domino \ nlsxbe.dll已加载到另一个类加载器中

来自分类Dev

java.lang.UnsatisfiedLinkError:本机库XXX.so已加载到另一个类加载器中

来自分类Dev

SonarQube-无法加载包装程序的本机库“ wrapper.dll”

来自分类Dev

如何根据应用程序正在运行的系统加载不同的本机库(dll)

来自分类Dev

如何根据应用程序正在运行的系统加载不同的本机库(dll,因此)

来自分类Dev

在Scala中加载本机库时出错

来自分类Dev

从 DLL 加载类,将其实例化为另一个类的子类

来自分类Dev

无法加载库'xxx.dll':在资源路径(JNA + DLL + eclipse rcp)中找不到本机库(win32-x86 / xxx.dll)

来自分类Dev

Costura 未加载本机 Dll

来自分类Dev

libGDX / roboVM:如何修复“本地库libhfscompressor.dylib已在另一个类加载器中加载”?

来自分类Dev

由于“使用”另一个DLL,C#DLL程序集加载失败

来自分类Dev

Nexus7无法加载本机库

来自分类Dev

未从cordova apk 加载本机库

来自分类Dev

引起原因:org.usb4java.LoaderException:在类路径中找不到本机库:/org/usb4java/windows-x86/libusb-1.0.dll

来自分类Dev

引起:org.usb4java.LoaderException:在类路径 /org/usb4java/windows-x86_64/libusb-1.0.dll 中找不到本机库

来自分类Dev

无法在模拟器上加载本机库

来自分类Dev

与Android中的另一个本机库冲突的保管箱同步API

来自分类Dev

将WPF DLL加载并运行到另一个WPF exe中

来自分类Dev

将WPF DLL加载并运行到另一个WPF exe中

来自分类Dev

C#加载本机dll动态简单

来自分类Dev

Leadtools PDF查看器可连续滚动

来自分类Dev

Leadtools PDF查看器,具有连续滚动

来自分类Dev

将C ++ DLL加载到可在另一个DLL中调用函数的matlab中

来自分类Dev

从一个进程加载的DLL中调用另一个进程中的方法

来自分类Dev

访问另一个DLL中的类?

来自分类Dev

如何访问另一个DLL中的类?

来自分类Dev

在Python中加载DLL

来自分类Dev

本机库加载时出现无法解释的UnsatisfiedLinkError

Related 相关文章

  1. 1

    UnsatisfiedLinkError:本机库sunmscapi.dll已在另一个类加载器中加载

  2. 2

    UnsatisfiedLinkError:本机库C:\ Domino \ nlsxbe.dll已加载到另一个类加载器中

  3. 3

    java.lang.UnsatisfiedLinkError:本机库XXX.so已加载到另一个类加载器中

  4. 4

    SonarQube-无法加载包装程序的本机库“ wrapper.dll”

  5. 5

    如何根据应用程序正在运行的系统加载不同的本机库(dll)

  6. 6

    如何根据应用程序正在运行的系统加载不同的本机库(dll,因此)

  7. 7

    在Scala中加载本机库时出错

  8. 8

    从 DLL 加载类,将其实例化为另一个类的子类

  9. 9

    无法加载库'xxx.dll':在资源路径(JNA + DLL + eclipse rcp)中找不到本机库(win32-x86 / xxx.dll)

  10. 10

    Costura 未加载本机 Dll

  11. 11

    libGDX / roboVM:如何修复“本地库libhfscompressor.dylib已在另一个类加载器中加载”?

  12. 12

    由于“使用”另一个DLL,C#DLL程序集加载失败

  13. 13

    Nexus7无法加载本机库

  14. 14

    未从cordova apk 加载本机库

  15. 15

    引起原因:org.usb4java.LoaderException:在类路径中找不到本机库:/org/usb4java/windows-x86/libusb-1.0.dll

  16. 16

    引起:org.usb4java.LoaderException:在类路径 /org/usb4java/windows-x86_64/libusb-1.0.dll 中找不到本机库

  17. 17

    无法在模拟器上加载本机库

  18. 18

    与Android中的另一个本机库冲突的保管箱同步API

  19. 19

    将WPF DLL加载并运行到另一个WPF exe中

  20. 20

    将WPF DLL加载并运行到另一个WPF exe中

  21. 21

    C#加载本机dll动态简单

  22. 22

    Leadtools PDF查看器可连续滚动

  23. 23

    Leadtools PDF查看器,具有连续滚动

  24. 24

    将C ++ DLL加载到可在另一个DLL中调用函数的matlab中

  25. 25

    从一个进程加载的DLL中调用另一个进程中的方法

  26. 26

    访问另一个DLL中的类?

  27. 27

    如何访问另一个DLL中的类?

  28. 28

    在Python中加载DLL

  29. 29

    本机库加载时出现无法解释的UnsatisfiedLinkError

热门标签

归档