Я пытаюсь настроить демонстрационный пример JNI и застрял при экспорте библиотеки в ОС Windows.Не удается найти jni.h
В соответствии с this учебник, следующая команда должна быть выполнена:
gcc -o libctest.so -shared -I/path/to/jdk/headers ctest.c -lc
, где /path/to/jdk/headers
относится к каталогу, содержащему jni.h
.
Это, как вызвать команду:
gcc -o ctest.dll -shared -I/"C:/Program Files/Java/jdk1.8.0_45/include" ctest.c -lc
и результат был:
jni.h: no such file or directory.
include jni.h
Я проверил this и this, который, кажется, предлагает довольно много, что я сделал.
Код:
#include <jni.h>
#include <stdio.h>
JNIEXPORT void JNICALL Java_HelloWorld_helloFromC
(JNIEnv * env, jobject jobj)
{
printf("Hello from C!\n");
}
Как обойти эту ошибку?
Почему бы не искать диск для файла 'jni.h'? Либо вы найдете его в другом месте, либо не увидите, что ваш JDK установлен неправильно. –
jni.h на самом деле, это то, что меня смущает. – John