用JNI技术可以从Java应用中调用C程序库,但是如何使该C程序库可以调用另外的C程序库?
如果一个被Java调用的C程序库C1仍需要调用另外一个C程序库C2,那么在编译C1的时候应当联接程序库C2,步骤如下(Solaris平台):编写调用C库的Java文件,并编译.javac java文件名产生C程序头文件javah -jni java文件名(不带后缀.java)编写被Java调用的C程序C1.c,以及被C1调用的C2.c,并编译.cc -G -Iinclude路径名 C2.c -olibC2.socc -G -Iinclude路径名 -lC2 C1.c -olibC1.so设置环境变量setenv LD_LIBRARY_PATH libC1.so,libC2.so所在路径{LD_LIBRARY_PATH}运行java应用
页:
[1]