java - 类型 'jint' 无法解析,以及 JNIEnv、jclass

标签 java android eclipse android-ndk

尝试使用 jni c 代码构建一个简单的 helloWorld android/java 应用程序。我在 Windows 7 上使用 Eclipse Indigo。在非空格路径中安装了 ndk r8,最终使用 ndk-build.cmd 构建了 c 库。但是javah生成的头文件有 Unresolved 错误,

  • 无法解析类型“jint”
  • 无法解析类型“JNIEnv”
  • 无法解析类型“jclass”

昨天没有看到 jni.h 包含,但今天早上重新启动后,该错误消失了。我也有一个 Unresolved JNIEXPORT 和 JNICALL 错误,但#defining 它们似乎已经解决了这个问题。卡在上面的最后3个。 已经在谷歌和 Stack Overflow 上搜索了答案,但是一旦有人找到解决方案,他们就不会说那个解决方案是什么:(

我已经在项目属性中检查了 java 和 c/c++ 透视图中的包含。它似乎包括我想要的 jni.h 目录,我将 android-14 用于 arm 平台。目标是 4.0.3 IceCream Sanwich(令人困惑的是 API 15?!)。我打算尝试使用 AVD 进行测试。 我试过关闭/重新打开项目,从 Eclipse 中删除并重新导入,但这些都没有奏效。

我错过了一些包含吗?我应该在哪里设置它们? 非常感谢一些帮助。

最佳答案

右键单击项目并转到属性属性。

转到C/C++ 常规->路径和符号

Includes->GNU C 中添加与此等效的内容:

%ndkroot%\platforms\android-8\arch-arm\usr\include

您可能希望指向其他平台版本的 NDK,只需更改路径的 android-8 部分即可。

关于java - 类型 'jint' 无法解析,以及 JNIEnv、jclass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11666711/

相关文章:

java - 将另一个类的 JTextarea 输出组合到主类框架的 JTextArea 中?

java - 如何在 Weka 中使用带有新数据的创建模型

android - 我正在尝试在 flutter 中使用中心小部件,但由于某些未知原因它无法正常工作,请帮助我

android - 如何在 Android 中正确地将像素坐标转换为 Canvas 坐标?

c++ - Eclipse 中函数原型(prototype)的建议

java - Android 上均匀间隔按钮

java - 日期比较不起作用

java - 从 processBuilder 执行 .cpp 文件

java - JSON字符串中途截断,java输入流

java - Jmeter API : how to add post data to httpsampler