可能是万恶的r自动更新导致之前的函数、包不可用,重新踏上安装RODPS的坑
前提:
macOS 10.12.6
RStudio version 1.1.456
R 3.5.1
安装RODPS中,出现rjava包无法安装情况,类似如下:
> library(rJava)
Error: package or namespace load failed for 'rJava':
.onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/Users/kevin/Library/R/3.4/library/rJava/libs/rJava.so':
dlopen(/Users/kevin/Library/R/3.4/library/rJava/libs/rJava.so, 6): Library not loaded: @rpath/libjvm.dylib
Referenced from: /Users/kevin/Library/R/3.4/library/rJava/libs/rJava.so
Reason: image not found
(因为我修复好了。。没有留下当初的报错信息。。)
debug心路历程:
1、 先了解到java高版本如11需要安装jre依赖的包,按照百度结果下载了
并将文件复制到lib下
重新运行R 并没有改变什么。。
2、后来大神说,不要用高版本,不稳定,好,重新安装 java8
各种搜索了解到链接rodps需要配置java环境,而java主要由两部分jdk 和jre两部分
oracle官网:https://www.oracle.com/technetwork/java/javase/downloads/index.html
对,java8 下载后会出现在这个路径下:
安装好,还需要配置环境变量
终端执行:
$ touch .bash_profile
然后
$ open -e .bash_profile
写入
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH
注:JAVA_HOME=上图中的路径
保存
然后
$ source .bash_profile
然后
$ echo $JAVA_HOME
执行结果为路径:/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home
则配置成功
好,重新运行R,并没有改变什么。。
3、又说好需要library(rJava)前手动定义JAVA_HOME
嗯,执行
Sys.setenv(JAVA_HOME='/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home/jre')
好,并没有改变什么。。
4、最后,神来之笔
终端运行: sudo R CMD javareconf
好,好了。。。。。。。我也不知道为什么/