Java 在JNI中链接静态库

Java 在JNI中链接静态库,java,java-native-interface,Java,Java Native Interface,我是JNI的新手 我想将一个静态库(比如libFoo.a)链接到我正在创建的动态库中。正在从我的Java类调用此动态库 这可能吗?如果是,怎么做 gcc -I$JAVA_DIR/include -I$JAVA_DIR/include/linux -o libXY.so -shared jni/xy.c libFoo.a 问:我想将一个静态库(比如libFoo.a)链接到我正在创建的动态库中。这可能吗 A:当然可以。只需在link命令中包含您的.a静态库,您就可以在其中构建共享.so 这与JN

我是JNI的新手

我想将一个静态库(比如libFoo.a)链接到我正在创建的动态库中。正在从我的Java类调用此动态库

这可能吗?如果是,怎么做

gcc -I$JAVA_DIR/include -I$JAVA_DIR/include/linux  -o libXY.so -shared jni/xy.c libFoo.a

问:我想将一个静态库(比如libFoo.a)链接到我正在创建的动态库中。这可能吗

A:当然可以。只需在link命令中包含您的.a静态库,您就可以在其中构建共享.so

这与JNI本身无关——任何共享二进制文件(*nix.so或Windows.dll)都可以以这种方式链接到共享库中

这些链接应有助于:


    • Q:我想将一个静态库(比如libFoo.a)链接到我正在创建的动态库中。这可能吗

      A:当然可以。只需在link命令中包含您的.a静态库,您就可以在其中构建共享.so

      这与JNI本身无关——任何共享二进制文件(*nix.so或Windows.dll)都可以以这种方式链接到共享库中

      这些链接应有助于:


      基于libtool的.la共享库(如libX.la)怎么样。我能用同样的方法把它也包括进去吗?我试过了,但出现了一些错误。那么像libX.la这样基于libtool.la的共享库呢。我能用同样的方法把它也包括进去吗?我试过了,但有一些错误。