致命错误: jni.h: 没有这样的文件或目录



我正在尝试在Windows上重新创建本教程:Java Native Interface (JNI)

当我尝试编译它时,出现以下错误:

fatal error: jni.h: No such file or directory
 #include <jni.h>
compilation terminated.

我的命令行是:

gcc -Wl,--add-stdcall-alias -IC:Program_FilesJavajdk1.7.0_45include -IC:Program_FilesJavajdk1.7.0_45includewin32 -shared -o hello.dll HelloJNI.c

我在所有文件所在的文件夹中编译。

我确定此文件夹中的文件"jni.h"位于:

C:Program FilesJavajdk1.7.0_45include

有谁知道为什么导入语句不起作用?

谢谢!

下划线与空格不同。如果jni.h确实在"程序文件"目录中,则应使用以下命令:

gcc -wl,--add-stdcall-alias -I "C:\Program Files\Java\jdk1.7.0_45\include" -I "C:\Program Files\Java\jdk1.7.0_45\include\win32" -shared -o hello.dll HelloJNI.c

我得到了答案:

我只需要使用引号,用斜杠替换反斜杠,用空格替换下划线。

该命令如下所示:

gcc -wl,--add-stdcall-alias -I"C:/Program 文件/Java/jdk1.7.0_45/包含" -I"C:/Program Files/Java/jdk1.7.0_45/include/win32" -shared -o hello.dll HelloJNI.c

谢谢大家!!

相关内容

最新更新