相关疑难解决方法(0)

未定义引用`JNI_CreateJavaVM'linux

我正在尝试熟悉JNI API,但无法获得要编译的示例c ++程序.

这是我用来编译的命令,下面是我正在尝试编译的程序.我得到的错误是:

/tmp/cczyqqyL.o: In function `main':
/home/nc/Desktop/jni/simple/ctojava/callJava.cpp:16: undefined reference to `JNI_CreateJavaVM'
Run Code Online (Sandbox Code Playgroud)

编译:

g++ -g -I/usr/lib/jvm/java-7-oracle/include/ -I/usr/lib/jvm/java-7-oracle/include/linux/ -L/usr/bin/java -L/usr/lib/jvm/java-7-oracle/jre/lib/amd64/server/ -ljvm callJava.cpp
Run Code Online (Sandbox Code Playgroud)

C++:

#include <jni.h> /* where everything is defined */

int main(){
    JavaVM *jvm; /* denotes a Java VM */
    JNIEnv *env; /* pointer to native method interface */

   JavaVMInitArgs vm_args;
   JavaVMOption options[1];
   options[0].optionString = "-Djava.class.path=/home/nc/Desktop/jni/simple/ctojava/";
   vm_args.version = JNI_VERSION_1_6;
   vm_args.options = options;
   vm_args.nOptions = 1;
   vm_args.ignoreUnrecognized = JNI_FALSE;

   /* Create the Java VM */
   int res = JNI_CreateJavaVM(&jvm, (void …
Run Code Online (Sandbox Code Playgroud)

c++ java-native-interface

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1

java-native-interface ×1