使用 install.packages("rJava")
命令安装rJava时出现以下错误:
checking Java support in R... present:
interpreter : '/usr/bin/java'
archiver : '/usr/bin/jar'
compiler : '/usr/bin/javac'
header prep.: '/usr/bin/javah'
cpp flags : '-I/usr/lib/jvm/java-6-sun-1.6.0.20/jre/../include -I/usr/lib/jvm/java-6-sun-1.6.0.20/jre/../include/linux'
java libs : '-L/usr/lib/jvm/java-6-sun-1.6.0.20/jre/lib/amd64/server -L/usr/lib/jvm/java-6-sun-1.6.0.20/jre/lib/amd64 -L/usr/lib/jvm/java-6-sun-1.6.0.20/jre/../lib/amd64 -L -L/usr/java/packages/lib/amd64 -L/usr/lib64 -L/lib64 -L/lib -L/usr/lib -ljvm'
checking whether JNI programs can be compiled... yes
checking JNI data types... configure: error: One or more JNI types differ from the corresponding native type. You may need to use non-standard compiler flags or a different compiler in order to fix this.
ERROR: configuration failed for package ‘rJava’
我安装了Java JDK, java -version
返回以下内容:
$ java -version
java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
当谷歌搜索错误时,我发现其他人遇到了同样的问题,但没有找到除了“安装整个JDK,而不仅仅是JRE”之外的解决方案 .
我读到的另一件事是运行 sudo R CMD javareconf
,它运行得非常愉快,没有任何错误 .
有什么想法我的问题是什么?
[[EDIT]] 这是's been a few months since I had this problem. I had initially solved this by editing my Java paths, as illustrated in the answer I posted below. I recently ran into the same issue on a new Ubuntu install. I tried Dirk'建议使用apt-get来安装rJava包 . 它工作得很好 . 我最初没有意识到的是,使用Ubuntu apt-get方法安装软件包与使用R中的install.packages()加载相同的软件包根本不同.Ubuntu软件包解决了一些我没有意识到或者没有意识到的问题 . .
15 回答
我在Ubuntu 16.04上遇到了类似的问题,并且能够通过在
/usr/lib/jvm
中创建一个名为"default-java"的文件夹并将其复制到/usr/lib/jvm/java-8-oracle
的所有内容中来解决它 . 我选择了这个解决方案,因为纠正JAVA_HOME环境变量是没有用的 .我通过下载得到它:https://cran.r-project.org/src/contrib/rJava_0.9-8.tar.gz并运行命令R CMD安装rJava_0.9-8.tar.gz
谢谢 - 您对
$JAVA_HOME
的建议引导我找到类似的解决方案:在调用R.之前
对我有用的是从文件
/usr/lib/R/etc/javaconf
更改JAVA_HOME我首先检查了我的Java版本是什么:
sudo update-alternatives --config java
. 在我的情况下,它是java-8-oracle
我打开文件
/usr/lib/R/etc/javaconf
并将default-java
替换为java-8-oracle
:取而代之 :
然后
sudo R CMD javareconf
我重新启动了RStudio,然后可以安装rJava .
原来我的问题是我的
JAVA_HOME
环境变量的问题 . 是的,我知道这令人震惊 . 我对PATH
和JAVA_HOME
的初始设置如下所示:我添加
/jre
所以它现在看起来像这样:如果没有
/jre
,Java中的所有内容似乎都能正常工作,但rJava不会 . 奇 .这对我来说在Ubuntu 12.04和R 3.0版本上都有用
这是具有jni.h的目录
接下来创建一个指向另一个必需头文件的软链接(我太懒了,不知道如何在下面的JAVA_CPPFLAGS选项中包含多个目录):
最后
我在这做的是:
_et9/apt/sources.list中的
deb http://ftp.de.debian.org/debian sid main
注意:rjava应该是最新版本
2运行:sudo apt-get update sudo apt-get install r-cran-rjava
一旦更新旧版本的rjava,就可以安装rhdfs_1.0.8 .
rJava包查找
/usr/lib/jvm/default-java/
文件夹 . 但它不是默认的 . 此文件夹具有为系统配置的默认Java的符号链接 .要激活默认的Java安装,请使用以下软件包:
sudo apt-get install default-jre default-jre-headless
使用CRAN R 3.4.1在ubuntu 17.04上测试
在AMD64上在Gentoo下运行R.我升级到R 2.12.0
R版本2.12.0(2010-10-15)版权所有(C)2010 R统计计算基金会ISBN 3-900051-07-0平台:x86_64-pc-linux-gnu(64位)和那些讨厌的消息去了远 .
Jan Vandermeer
这就是我的工作方式:
在Linux中(Ubuntu 16.04)
R中
:
下面是我在另一篇文章中的答案之一 - error: unable to load installed packages just now
(这也与这个问题有关)
对于Linux(Ubuntu)用户:如果安装了oracle-java (7/8) . 它将在此位置
/usr/lib/jvm
和sudo
访问是必需的 .使用以下条目创建文件
/etc/ld.so.conf.d/java.conf
:(用java-7-oracle替换java-8-oracle,具体取决于你的java版本)
然后:
重新启动RStudio,然后安装rJava包 .
岂不
一直比较容易?你可以在useR上问我! :)
我试图安装openjdk-7- *但我仍然遇到安装rJava的问题 . 在我重新启动计算机后结果出来,那就没有问题了 .
所以
问题是rJava不会安装在
RStudio
(Version 1.0.136
) . 以下为我工作(macOS Sierra version 10.12.6
)(找到here):步骤1:从here下载并安装
javaforosx.dmg
步骤2:接下来,从RStudio内部运行命令:
我遇到了同样的问题,它在下面运行命令后起作用 .
详情请见http://www-01.ibm.com/support/knowledgecenter/SSPT3X_3.0.0/com.ibm.swg.im.infosphere.biginsights.install.doc/doc/install_install_r.html