JNI 인터페이스를 사용하여 C 코드에서 Java 코드를 호출합니다. 컴파일 중에 다음 명령을 사용합니다 :C에서 Java 코드 호출
gcc -g -I/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/include/-I/usr/lib/jvm// usr/bin/java -L/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre// AMD64/서버/-ljvm calljava.c
내가 JVM을 만들려면 다음 코드를 사용 LIB :
JNIEnv* create_vm()
{
JavaVM* jvm;
JNIEnv* env;
JavaVMInitArgs args;
JavaVMOption options[1];
args.version = JNI_VERSION_1_2;
args.nOptions = 1;
options[0].optionString = "-Djava.class.path=<classpath>";
args.options = options;
args.ignoreUnrecognized = JNI_FALSE;
JNI_CreateJavaVM(&jvm, (void **)&env, &args);
return env;
}
내 질문은 : 바이너리에 하드 코딩 JVM의 경로를? 런타임시 Java 실행 파일에 대한 경로를 지정할 수 있습니까? 그렇게 할 수있는 방법이 있다면 누구든지 컴파일 플래그를 사용할 수 있습니까? 사전에
감사합니다!