我遇到了这个问题中讨论的相同错误消息,归结为:
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/home/anh/Rlibs/rJava/libs/rJava.so':
libjvm.so: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)
问题是,在答案之后(即设置LD_LIBRARY_PATH指向libjvm.so)在命令行中解决了我的问题R,但Rstudio libjvm.so仍然无法找到.
系统规格:Ubuntu 14.04,R 3.1.1,Rstudio Desktop 0.98,apt-get install r-cran-rjava完成
感谢@ hrbrmstr的评论,我LD_LIBRARY_PATH在RStudio支持论坛中搜索并遇到了这个解决方案.
问题归结为Rstudio无法找到libjvm.so.我设置LD_LIBRARY_PATH在/etc/environment,从而library(rjava)能够经由终端R.加载然而,Rstudio看起来不进入etc/environment,因此是不知道的LD_LIBRARY_PATH.
其结果:设置LD_LIBRARY_PATH在~/.profile将其提供给所有的桌面应用程序(所建议的持久性环境变量的Ubuntu wiki文章)
export LD_LIBRARY_PATH=/usr/lib/jvm/java-7-oracle/lib/amd64:/usr/lib/jvm/java-7-oracle/jre/lib/amd64/server
Run Code Online (Sandbox Code Playgroud)
然后
sudo R CMD javareconf
Run Code Online (Sandbox Code Playgroud)