当我想要加载rJava时,我得到了一个错误。已安装JDK。(我在cloudera( CentOS演示VM cdh3u4)上运行R)
> library(rJava)
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/home/cloudera/R/x86_64-redhat-linux-gnu-library/2.15/rJava/libs/rJava.so':
libjvm.so: cannot open shared object file: No such file or directory
Error: package/namespace load failed for ‘rJava’LD_LIBRARY_PATH设置有问题吗?如果是,我如何解决这个问题?我需要rJava运行它,以便稍后安装rhdfs。
更多信息(如果需要):
[cloudera@localhost ~]$ java -version
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode)发布于 2013-04-14 19:43:17
让rJava正常工作在很大程度上取决于您的计算机配置。下面的代码至少可以在windows平台上运行。如果这对你的平台也有帮助,你可以试着检查一下。
Sys.getenv("JAVA_HOME")
如果您需要设置JAVA_HOME (例如,在maven或其他方面需要它),您可以在加载rJava之前在R-session中使用以下代码将其停用:
if (Sys.getenv("JAVA_HOME")!="")
Sys.setenv(JAVA_HOME="")
library(rJava)在大多数情况下,这应该会起到作用。此外,这也会解决Using the rJava package on Win7 64 bit with R的问题。我借用了R: rJava package install failing中取消设置环境变量的想法。
发布于 2014-09-19 19:27:44
对于Ubuntu,安装oracle-java (7/8)。它将位于这个位置/usr/lib/jvm,并且需要sudo访问权限。
使用以下条目创建文件/etc/ld.so.conf.d/java.conf:
/usr/lib/jvm/java-8-oracle/jre/lib/amd64
/usr/lib/jvm/java-8-oracle/jre/lib/amd64/server(根据您的java版本,将java-8-oracle替换为java-7-oracle或java-7-openjdk-amd64 )
然后:
sudo ldconfig重新启动RStudio,然后安装rJava包。
https://stackoverflow.com/questions/13403268
复制相似问题