17

我想安装 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.

任何想法如何解决它?

4

3 回答 3

8

我知道这已关闭,但我正在添加我的解决方案以确保完整性。实际上,我遇到了同样的问题,并且都已正确安装。我也跑过

sudo R CMD javareconf

用于系统范围的设置。我需要的是让它为我的用户工作。在这种情况下,您应该运行

R CMD javareconf -e

没有 sudo 并附加 -e。

为我工作。:)

于 2017-05-31T11:43:37.640 回答
6

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

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

于 2013-07-10T12:32:19.497 回答
0

我也遇到了与 RHEL8.1 相同的错误,我将其解决如下:

 yum --enablerepo=* install java-1.8* 

后来我运行了相同的命令,这给了我 R 服务器的错误日志。

 R CMD javareconf

变成以下输出并成功。

在此处输入图像描述

于 2020-02-12T06:14:38.600 回答