【问题标题】:how to rebuild android jni C files in eclipse如何在eclipse中重建android jni C文件
【发布时间】:2014-01-14 16:49:52
【问题描述】:

我正在学习如何编写一个使用 NDK 来调用 OpenCV C++ 函数的 Android 应用程序。

我正在使用 Eclipse ADT 版本 22.3 和 NDK R9C。

我从 NDK 示例中导入了 hello-jni 示例应用程序,它可以在我的 Android 设备上编译、构建和运行,没有任何问题。

但是,当我对项目的 C 源文件进行更改并重新构建时,这些更改不会反映在构建中。事实上,我可以在 C 文件中添加一个语法错误并重新构建,但我没有收到任何错误。

谁能告诉我为什么我的项目的 JNI 部分没有被重新编译?

我尝试将 jni 部分作为单独的项目导入 Eclipse。但是 Eclipse 似乎不理解 jni 目录中的 makefile。它抱怨生成文件没有“所有”目标(它们没有)。

【问题讨论】:

    标签: android eclipse android-ndk java-native-interface


    【解决方案1】:

    在你的项目上右击,可以选择Android Tools -> Add Native Support吗?

    另外,Project Properties -> C/C++ Build 下是否启用了Use default build command

    最后,Project Properties -> C/C++ Build -> Behaviour,是否选择了Build (Incremental Build)Clean 选项?

    【讨论】:

    • 当我检查添加本机支持时,Eclipse 告诉我我的 NDK 位置不正确。我通过关注这篇文章stackoverflow.com/questions/11825534/… 解决了这个问题,现在一切都正确编译了。谢谢。
    • 我说得太早了。修复 NDK 位置后,我仍然需要使用 Android GCC 将 jni 目录中的项目作为 C/C++ 应用程序导入。
    • 实际上,您可以将 ndk-build 添加到 Eclipse 的自动构建属性中,这样您就可以在保存 cpp 文件时处理所有重建过程。
    • 我尝试了上面提到的所有步骤。但是更改仍然没有反映在android项目中。你能解决这个问题吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-13
    • 2012-12-17
    • 1970-01-01
    • 2013-11-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多