Java Restful服务器找不到JNI共享对象文件
这是我的问题- 我已经创建了restful服务器,并对其进行了修改,以使用JNI功能在我的项目中调用本机C文件中的函数 目前我有两个班在我的项目Java Restful服务器找不到JNI共享对象文件,java,eclipse,rest,java-native-interface,Java,Eclipse,Rest,Java Native Interface,这是我的问题- 我已经创建了restful服务器,并对其进行了修改,以使用JNI功能在我的项目中调用本机C文件中的函数 目前我有两个班在我的项目 java-它可以调用Hello.c类中的函数 成功(当我作为java应用程序运行时) java-这是一个restful服务器,在运行时运行良好 服务器并显示相关内容。但当我尝试创建对象时 对于Server.java中的HelloJNI.java,它显示以下错误 javax.servlet.ServletException: java.lang.Unsa
javax.servlet.ServletException: java.lang.UnsatisfiedLinkError: no
hello in java.library.path
我在Ubuntu 12.04上使用eclipse。您使用什么应用程序服务器/servlet容器?我在使用Tomcat服务器当Tomcat启动时,您需要更改-Djava.library.path以包括您放置.so文件的位置。或者,您可以通过
system.getProperty(“java.library.path”)
检查现有系统属性是什么,并将.so放在该位置。但是,请注意,如果您的本机代码爆炸并导致seg故障,它将完全关闭您的tomcat服务器。@Samhain-谢谢您的建议。是否有任何地方可以对Eclipse环境进行更改以使其正常工作?我希望我的服务器找到JNI共享对象libhello.so。在哪里可以将其添加到java库路径?您可以通过双击服务器选项卡下的服务器并选择“打开启动配置”选项,将-Djava.library.path=
添加到tomcat启动中。您应该能够从那里将其添加到参数中。