我正在尝试make
this library,并且正在遵循 Maven 段落中的说明。但是,我在步骤上失败
make clean all
,出现以下错误:
ObjectManager.c:35:17:致命错误:jni.h:没有此类文件或目录
#include <jni.h>
因此,按照this question和this question的回答,我试图将jni.h
文件的位置添加到编译器标志中。就我而言,该文件位于
/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include
到目前为止,我已经尝试过:
make -I/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include clean all
make -I"${JAVA_HOME}/include" -I"${JAVA_HOME}/include/linux" clean all
export JAVA_INCLUDE_DIR=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include
答案 0 :(得分:2)
此库已具有正确的设置[请参阅CFLAGS]。从其目标/ jni中的makefile中:
IDIR =./include
CC=gcc
CFLAGS=-fPIC -Wall -g -I. -I$(IDIR) -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -I/usr/lib/x86_64-linux-gnu/glib-2.0/include $(shell pkg-config --cflags $(PKGDEPS))
这很可能意味着您的JAVA_HOME设置不正确。