小编典典

JNI:vcvars32.bat给我“无法打开包含文件:'stdio.h':没有这样的文件或目录”

java

我正在尝试使用JNI将.C代码与我的Java项目集成在一起。

在Visual Studio 2017中尝试使用vcvars32.bat生成.dll文件时,它给了我一条错误消息,提示:

“ C:\ Program Files \ Java \ jdk1.8.0_151 \ include \
jni.h(39):致命错误C1083:无法打开包含文件:’stdio.h’:没有这样的文件或目录”

我在我的C代码中删除了stdio.h库的包含内容,但没有帮助。

我的命令是:

“ cl -I” C:\ Program Files \ Java \ jdk1.8.0_151 \ include“ -I” C:\ Program
Files \ Java \ jdk1.8.0_151 \ include \ win32“ -LD” Factorial.c“ -Fe”
Factorial.dll“”


阅读 264

收藏
2020-11-30

共1个答案

小编典典

经过一段时间的搜索和失败后,我不得不通过VS13
vsvars32.bat生成它,请注意,vsvars不是生成32位dll的VS17的vcvars,因为我的平台是64位的,所以我必须安装并切换到32位JVM,问题是解决。

2020-11-30