2013-06-04 71 views
1

我在Android开发中使用JNI。我想知道编译器在哪里找到引用的.h文件?Android JNI C++文件编译

这里是jni/jni_part.cpp,它包含很多.h文件。 Opencv相关文件由SDK定义,但“cartoon.h”肯定是项目指定的头文件。但是我无法在项目文件夹中找到它。然后执行eclipse在每次运行时编译JNI C++代码?如果是这样,日食在哪些目录中找到这些标题?

也许这是JNI的基础,但我不熟悉它。所以PLZ帮助我一两句话。或者你可以在Android中粘贴一个简单的JNI教程,eclipse。

#include <jni.h> 
#include <opencv2/core/core.hpp> 
#include <opencv2/imgproc/imgproc.hpp> 
#include <opencv2/features2d/features2d.hpp> 


#include "cartoon.h" 
#include "ImageUtils.h" // Handy functions for debugging OpenCV images, by Shervin Emami. 


using namespace std; 
using namespace cv; 

extern "C" { 

..... 

这是我的Eclipse项目的文件夹结构

/project 
    /jni 
    jni_part.cpp 
    /src 
    something.java 

回答

0

如果Eclipse的“知道”,其中cartoon.h文件在磁盘上,它会帮助你找到它 - 把光标放在#include行并按F3

关于您的其他问题:Eclipse仅在相关文件(源代码,头文件或mk)发生更改时才编译。

+0

THX。但Eclipse如何知道它?它搜索哪些目录?此外,Eclipse将所有这些事情都标记为错误,所以我不确定Eclipse是否至少知道它们现在在哪里。 – SolessChong

+0

我很抱歉,我接受了你的说法......你写道Eclipse知道文件在哪里。如果** F3 **对'cartoon.h'文件不起作用,那么究竟_does_有效吗?如果构建成功,您可以查看** jni/Android.mk **文件中的线索。 –

+0

这是我的遗憾,为我可怜的英语。我把我的话更新为“在哪个directoris进行eclipse搜索标题。” – SolessChong