我试图在java和c ++之间创建一个JNI应用程序,包含#include告诉我无法找到jni.h。我查看了六个线程和网页,并尝试了无法解决的修复程序。如果有帮助的话,我在路径库/框架/ JavaVM.framework中没有任何内容,而且我无法弄清楚如何获取它。
我正在尝试构建一个JNI项目。我知道jni.h位于/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/include路径中,但由于某种原因,这个makefile不起作用。
编辑:此外,如果重要的话,我还会使用eclipse。
# Define a variable for classpath
CLASS_PATH = ../bin
# Define a virtual path for .class in the bin directory
vpath %.class $(CLASS_PATH)
all : hpaprogram.dll
# $@ matches the target, $< matches the first dependancy
hpaprogram.dll : HPAProgram.o
gcc -Wl,--add-stdcall-alias -shared -o $@ $<
# $@ matches the target, $< matches the first dependancy
HPAProgram.o : HPAProgram.c++ HPAProgram.h
gcc -I"/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/include" -c $< -o $@
# $* matches the target filename without the extension
HPAProgram.h : HPAProgram.class
javah -classpath $(CLASS_PATH) $*
clean :
rm HPAProgram.h HPAProgram.o hpaprogram.dll
答案 0 :(得分:0)
我明白了。我的JavaVM.framework实际上在/System/Library/Framework/JavaVM.framework