我有一个C项目。我将它编译为一个库(.so),并使用JNI将它导入到一个java项目中。一切进行得都很顺利。但是我想将它编译成.jar文件,这样我就可以分发它,用户不必创建实现C函数的Java类(使用JNI)。所以我试图做到这一点,但是当我尝试再次编译时(在一个干净的项目中,包含类和.so的.jar),类(从jar中)再也找不到.so了,符号不被识别。我不希望用户手动链接.so到jar(在Eclipse或其他)。.so .jar(Eclipse)
我对java或eclipse没有太多的经验,所以我很迷茫。
有没有人有答案或什么来帮助我?
你会遇到一个问题,就是你将该应用程序分发给了除linux以外的其他应用程序。顺便说一句,System.loadLibrary不适用于内部的jar库 – RamonBoza