我有一个WebApplication(Java / Angular),并且正在加载几个用于光学字符识别和PDF操作的第三方DLL。我使用System.loadLibrary方法加载它们,并且由于文件位于java.library.path中,因此可以正常工作。但是,当我重新部署webApp时,我得到:
java.lang.UnsatisfiedLinkError: Native Library [library name] already loaded in another classloader
我知道为什么,因为WebApp类加载器是层次结构中的最后一个类加载器,并且彼此隔离。但是,为什么在替换该应用程序时这些DLL没有被gc加密? 我知道其他人已经解决了这个问题,但是到目前为止没有任何效果。我试过将文件移到Catalina_base \ lib中,我试着通过网络上的一些想法卸载DLL……到目前为止,似乎没有任何帮助。有什么想法吗?