rJava 可以在 RStudio 中加载,但不能在 R 中加载,操作系统是 Ubuntu 14.04.1 LTS [英] rJava can load in RStudio but not in R, OS is Ubuntu 14.04.1 LTS

查看:46
本文介绍了rJava 可以在 RStudio 中加载,但不能在 R 中加载,操作系统是 Ubuntu 14.04.1 LTS的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我安装了 rJava,它在 RStudio 中加载良好,但是当我从终端或 crontab 启动 R 时无法加载.我已经尝试了我在网上找到的所有可能的方法,现在我还能做什么?

0.1.错误信息

<块引用>

库(rJava)错误:rJava"的 loadNamespace() 中的 .onLoad 失败,详细信息:调用:dyn.load(file, DLLpath = DLLpath, ...)错误:无法加载共享对象/mnt/home/dx/R/x86_64-pc-linux-gnu-library/3.0/rJava/libs/rJava.so":libjvm.so:无法打开共享对象文件:没有这样的文件或目录错误:rJava"的包或命名空间加载失败

  1. 操作系统版本:

没有可用的 LSB 模块.分销商 ID: Ubuntu描述:Ubuntu 14.04.1 LTS发布: 14.04代号:trusty

  1. JAVA 版本:

java 版本1.7.0_75"OpenJDK 运行时环境 (IcedTea 2.5.4) (7u75-2.5.4-1~trusty1)OpenJDK 64 位服务器 VM(构建 24.75-b04,混合模式)

  1. 来自 RStudio 的 LD_LIBRARY_PATH:

    <块引用>

    Sys.getenv("LD_LIBRARY_PATH")[1] "/usr/lib/R/lib:/lib:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server"

  2. 来自终端的 LD_LIBRARY_PATH:

    $ echo $LD_LIBRARY_PATH

    dx@sd508:/usr/lib/jvm/java-1.7.0-openjdk-amd64/jre/lib/amd64/server

  3. 来自 RStudio 的 JAVA_HOME:

<块引用>

Sys.getenv("JAVA_HOME")[1] "/usr/lib/jvm/java-7-openjdk-amd64"

  1. 来自终端的 JAVA_HOME:

$ echo $JAVA_HOME/usr/lib/jvm/java-7-openjdk-amd64

解决方案

您的 Java 是否在系统路径上可执行?您已经设置了 JAVA_HOME 环境变量,但是您是否将 bin 目录(在它下面)附加到了 PATH 环境变量中?

例如.像这样:export PATH=$PATH:$JAVA_HOME/bin

libjvm.so 是 Java 安装的一部分,所以它应该独立于 LD_LIBRARY_PATH 环境变量.

I have rJava installed, it loads well in RStudio, but cannot load when I start R from Terminal, or from crontab. I've tried all possible ways I found online, what else can I do now?

0.1. Error message

library(rJava) Error : .onLoad failed in loadNamespace() for 'rJava', details: call: dyn.load(file, DLLpath = DLLpath, ...) error: unable to load shared object '/mnt/home/dx/R/x86_64-pc-linux-gnu-library/3.0/rJava/libs/rJava.so': libjvm.so: cannot open shared object file: No such file or directory Error: package or namespace load failed for ‘rJava’

  1. OS version:

No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 14.04.1 LTS Release: 14.04 Codename: trusty

  1. JAVA version:

java version "1.7.0_75" OpenJDK Runtime Environment (IcedTea 2.5.4) (7u75-2.5.4-1~trusty1) OpenJDK 64-Bit Server VM (build 24.75-b04, mixed mode)

  1. LD_LIBRARY_PATH from RStudio:

    Sys.getenv("LD_LIBRARY_PATH") [1] "/usr/lib/R/lib:/lib:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server"

  2. LD_LIBRARY_PATH from Terminal:

    $ echo $LD_LIBRARY_PATH

    dx@sd508:/usr/lib/jvm/java-1.7.0-openjdk-amd64/jre/lib/amd64/server

  3. JAVA_HOME from RStudio:

Sys.getenv("JAVA_HOME") [1] "/usr/lib/jvm/java-7-openjdk-amd64"

  1. JAVA_HOME from Terminal:

$ echo $JAVA_HOME /usr/lib/jvm/java-7-openjdk-amd64

解决方案

Is your Java executable on system path? You have set the JAVA_HOME environment variable, but have you appended the bin directory (underneath it) to the PATH environment variable?

eg. like this: export PATH=$PATH:$JAVA_HOME/bin

libjvm.so is part of Java installation, so it should be independent of the LD_LIBRARY_PATH environment variable.

这篇关于rJava 可以在 RStudio 中加载,但不能在 R 中加载,操作系统是 Ubuntu 14.04.1 LTS的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆