JNI自动生成的头文件在Eclipse C++项目中出现语法错误
Eclipse C++项目JNI头文件语法错误解决方法
问题分析
生成的JNI头文件本身语法无错误,报错根源是Eclipse未正确配置JNI头文件的搜索路径,导致编译器无法识别JNIEnv、jclass等JNI原生类型。
具体配置步骤
1. 添加JNI头文件路径
- 右键C项目 → 属性 → **C/C通用** → 路径和符号 → 包含选项卡
- 点击添加,选择本地JDK安装目录下的
include文件夹(例如C:\Program Files\Java\jdk1.8.0_301\include),勾选添加到所有配置 - 再次点击添加,选择JDK目录下的平台相关子目录:Windows选
include\win32,Linux选include\linux,同样勾选添加到所有配置 - 点击应用并关闭
2. 配置C++编译方言
- 进入项目属性 → C/C++ Build → 设置 → GCC C++编译器 → 方言
- 选择合适的C语言标准(如ISO C11及以上),确保编译器能正确识别
__cplusplus宏及extern "C"语法
3. 配置JVM库链接(避免链接错误)
- 进入项目属性 → C/C++ Build → 设置 → GCC C++链接器 → 库
- 在**库(-l)**中添加
jvm - 在**库搜索路径(-L)**中添加JDK下JRE的server目录:Windows为
jre\lib\amd64\server,Linux为jre/lib/amd64/server - 点击应用并关闭
验证操作
完成配置后,执行项目 → 清理,再重新构建项目,此时JNI头文件的语法错误应消失,项目可正常编译链接。
内容的提问来源于stack exchange,提问作者OW2 Is Trash
相关产品推荐
相关产品推荐

