找不到 jni.h
Cannot find jni.h
我正在尝试设置 JNI 演示示例,但在 Windows OS.
上导出库时卡住了
根据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 and this,这似乎表明我所做的差不多。
代码:
#include <jni.h>
#include <stdio.h>
JNIEXPORT void JNICALL Java_HelloWorld_helloFromC
(JNIEnv * env, jobject jobj)
{
printf("Hello from C!\n");
}
如何解决此错误?
你试过吗:
gcc -o ctest.dll -shared -I"C:\Program Files\Java\jdk1.8.0_45\include" ctest.c -lc
请注意,在 -I
之后,斜杠字符不再存在,分隔符设置为反斜杠(Windows 分隔符)。
我正在尝试设置 JNI 演示示例,但在 Windows OS.
上导出库时卡住了根据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 and this,这似乎表明我所做的差不多。
代码:
#include <jni.h>
#include <stdio.h>
JNIEXPORT void JNICALL Java_HelloWorld_helloFromC
(JNIEnv * env, jobject jobj)
{
printf("Hello from C!\n");
}
如何解决此错误?
你试过吗:
gcc -o ctest.dll -shared -I"C:\Program Files\Java\jdk1.8.0_45\include" ctest.c -lc
请注意,在 -I
之后,斜杠字符不再存在,分隔符设置为反斜杠(Windows 分隔符)。