如何在web容器中加载java本机库

如何在web容器中加载java本机库,java,tomcat,java-native-interface,jetty,unsatisfiedlinkerror,Java,Tomcat,Java Native Interface,Jetty,Unsatisfiedlinkerror,我正在将一个使用专有本机库的Java应用程序从单机版迁移到web库,它在命令行或eclipse中运行时运行良好,但在web容器中调用本机方法时抛出未满足的LinkError 我已经设法在web应用程序中加载了其他不同的本机库,System.load和System.loadLibrary都没有抛出任何错误。在加载每个库之后,我在应用程序中添加了一些日志来验证这一点 我认为这可能是web容器的一个问题,所以我尝试使用Jetty和Tomcat,但在这两个方面我得到了相同的错误 目前正在使用: -Jav

我正在将一个使用专有本机库的Java应用程序从单机版迁移到web库,它在命令行或eclipse中运行时运行良好,但在web容器中调用本机方法时抛出未满足的LinkError

我已经设法在web应用程序中加载了其他不同的本机库,System.load和System.loadLibrary都没有抛出任何错误。在加载每个库之后,我在应用程序中添加了一些日志来验证这一点

我认为这可能是web容器的一个问题,所以我尝试使用Jetty和Tomcat,但在这两个方面我得到了相同的错误

目前正在使用: -Java 1.8.0_72 -码头9.3.6 -Tomcat 8.0.30 -Debian 8 -通用条款4.9.2

为了进一步说明,我在同一个目录中有两个本机库,两个都是。因此文件具有相同的权限。如果我删除失败文件的.so文件,其中一个会抛出错误,而另一个会正常工作:
java.lang.UnsatifiedLink错误:java.library.path中没有专有库


看起来我的库中有web容器不喜欢的东西,可能是什么?

好吧,你把本机库放在哪里了?问题中有没有可以包含的stacktrace?stacktrace不是很有用,如果库根本没有加载,这是一个非常简单的:
原因:java.lang.unsatifiedlinkerror:test.test.nativeMethod(Ljava/lang/String;)J
可能重复的