java - sudo R CMD javareconf 报错

标签 java r

sudo R CMD javareconf

Java interpreter : /usr/lib/jvm/default-java/jre/bin/java
Java version     : 1.8.0_121
Java home path   : /usr/lib/jvm/default-java
Java compiler    : not present
Java headers gen.: 
Java archive tool: 

trying to compile and link a JNI program 
detected JNI cpp flags    : 
detected JNI linker flags : -L$(JAVA_HOME)/jre/lib/amd64/server -ljvm
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG      -fpic  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c conftest.c -o conftest.o
conftest.c:1:17: fatal error: jni.h: 没有那个文件或目录
compilation terminated.
/usr/lib/R/etc/Makeconf:159: recipe for target 'conftest.o' failed
make: *** [conftest.o] Error 1
Unable to compile a JNI program


JAVA_HOME        : /usr/lib/jvm/default-java
Java library path: 
JNI cpp flags    : 
JNI linker flags : 
Updating Java configuration in /usr/lib/R
Done.

当我运行 sudo R CMD javareconf 时,结果告诉我找不到 jni.h。我安装了 Java 和 Hadoop,我想安装 R 包“rJava”。但是当我安装“rJava”时,Rstudio 也运行错误。首先,我想知道如何解决 sudo R CMD javareconf 并找到 jni.h 文件.

最佳答案

编译器标志表明您使用的是 Debian 或 Ubuntu。然后,您可以使用 R 包本身用于其构建的内容:

sudo apt-get install default-jdk

关键是“jdk”——开发工具包,而不仅仅是“jre”,也就是运行时环境。

但是如果你只想要 rJava 包,试试

sudo apt-get install r-cran-rjava

关于java - sudo R CMD javareconf 报错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43882580/

相关文章:

java - 两个 Java Date 对象之间的小时+分钟

java - 抛出多个自定义异常时如何处理

java - 使用 Gradle 为多个模块构建一个 jar 的最简单方法是什么?

r - 如何在 R 中为栅格创建正确的空间滞后变量?

R:对数尺度的图像强度

java - Eclipse - 覆盖从其他源文件夹自动生成的源

java - "package"在UML中的含义与Java中的含义相同吗?

r - 使用 RDCOMClient 将 R 连接到 SSAS 多维数据集

r - R 4.0.0 + RStudio 中的 "Debug location is approximate because the source is not available"

r - 按文本语言拆分字符串