gpt4 book ai didi

android - Eclipse ADT - Unresolved inclusion jni.h

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:07:03 24 4
gpt4 key购买 nike

在我的 Windows 平台上,我安装了最新版本的 adt bundle (20140321) 和 ndk (r9d)。安装非常干净。环境变量NDK_ROOT、PATH等均已正确定义。

我正在开发的应用程序有一些 C++ native 代码。代码在 Eclipse 外部和 Eclipse 内部都构建良好。

然而,问题是编辑提示 jni.h 是一个 Unresolved inclusion 。

Project-->Properties-->C/C++ General-->PathsAndSymbols显示include目录,其中一个目录是C:\adt\ndk\platforms\android-19\arch-arm\usr\include。我已验证此目录中存在 jni.h。

我已经检查了该论坛上的所有其他消息,但找不到任何具体步骤。感谢您的指导。问候。

最佳答案

更新到 Eclipse Kepler 后,我在使用基于 Android NDK 的代码的工作项目中遇到了类似的问题。我观察到类似的事情:头文件会正确地列在项目的“包含”下,实际构建(通过 ndk-build)工作正常,但 Eclipse 的编辑器无法在标准系统目录中找到任何头文件(所有头文件都带有 < > 括号)。

我尝试了许多不同的修复,包括切换工具集、重建索引等,但都没有成功。

最后,我从项目中完全删除了 C 特性,并通过 Eclipse 中的“Android 工具”菜单将其添加回来。

去除 C 性质:

我能找到的从项目中可靠地移除 C 性质的唯一方法是手动编辑 Eclipse 的 .project项目的文件。

  1. 关闭 Eclipse 项目(例如退出 Eclipse)。

  2. 打开.project文本或 xml 编辑器中的文件。至少会有 2 <buildCommand>需要删除的节点。删除 <buildCommand>名称为 org.eclipse.cdt.managedbuilder.core.genmakebuilder 的节点及其所有子项,以及 <buildCommand>名称为 org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder 的节点和它的 child 。最后,删除行:

    <nature>org.eclipse.cdt.core.cnature</nature> <nature>org.eclipse.cdt.core.ccnature</nature> <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>

  3. 完全删除 .cproject文件。

恢复 Android 原生特性

在 Eclipse 中重新打开项目。然后右键单击项目资源管理器中的项目,并从“Android 工具”上下文菜单中选择“添加 native 支持...”。

Android Tools -> Add Native Support...

查看此更改前后 .project 和 .cproject 文件中所做的更改,它似乎主要为 Android NDK 工具提供了新版本号。无论如何,它为我解决了这个问题。

关于android - Eclipse ADT - Unresolved inclusion jni.h,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23122934/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com