我有一个应在 glassfish
上运行的 Web 应用程序。
应用程序使用jna
版本4.1.0
,并且jna-4.1.0.jar
与应用程序一起打包在其中>lib
文件夹。
但是,据我所知,glassfish
本身使用 jna
库的 3.1
版本,并且它被打包在内部
ibpam4j-repackaged.jar
位于以下路径:
('C:/Program Files/glassfish-4.1.1/glassfish/modules')
。
结果 - 应用程序没有运行,并且抛出
java.lang.NoSuchMethodError: com.sun.jna.Pointer.getWideString(J)Ljava/lang/String;
因为使用了错误版本的库。
有什么想法可以解决这个问题吗?
谢谢。
(顺便说一下,它本身不是我的应用程序 - 我只是想在 glassfish 上运行 waffle 示例)
最佳答案
原来如此设定
<class-loader delegate="false"/>
在 glassfish-web.xml
内 就可以了。
现在一切正常。
关于java - 使用较新版本的 jna 库在 Glassfish 上运行 Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47888563/