使用较新版本的jna库在Glassfish上运行Web应用程序

时间:2017-12-19 13:56:22

标签: java glassfish classloader jna waffle

我有一个应该在glassfish上运行的Web应用程序。

应用程序使用jna版本4.1.0jna-4.1.0.jar在其lib文件夹中打包了应用程序。

Howerver,据我所知,glassfish本身使用3.1库的版本jna,它被打包在里面 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示例)

1 个答案:

答案 0 :(得分:1)

事实证明,设定 <class-loader delegate="false"/> glassfish-web.xml 内部就可以了。

现在一切正常。