无法编译JNI程序rJava

我想安装rJava但它不起作用。 当我在控制台中键入R CMD javareconf时,我收到以下错误:

trying to compile and link a JNI progam detected JNI cpp flags : detected JNI linker flags : gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG -fpic -O3 -pipe -g -c conftest.c -o conftest.o conftest.c:1:17: error: jni.h: No such file or directory conftest.c: In function 'main': conftest.c:4: warning: implicit declaration of function 'JNI_CreateJavaVM' make: *** [conftest.o] Error 1 Unable to compile a JNI program Java library path: JNI cpp flags : JNI linker flags : Updating Java configuration in /usr/lib64/R Done. 

任何想法如何解决它?

jni.h文件是JDK安装的一部分。 您可能没有正确安装Java JDK。 从此处下载Oracle Java,或使用您的包管理器。

如果已安装Java JDK,请将JAVA_HOME环境变量设置为指向JDK目录。

我知道这是关闭的,但我正在添加我的解决方案以保持完整性。 实际上我有同样的问题,所有都正确安装。 我也跑了

 sudo R CMD javareconf 

用于系统范围设置。 我需要的是它为我的用户工作。 在这种情况下你应该跑

 R CMD javareconf -e 

没有sudo和附加-e。

为我工作。 🙂