繁体   English   中英

R / RStudio,Yosemite和Java

[英]R/RStudio, Yosemite, and Java

我昨天升级到了OSX Yosemite。 当我在RStudio运行library(xlsx)时,程序崩溃,我收到消息:“要打开'RStudio',您需要安装旧的Java SE 6运行时。” 当我在R运行library(xlsx)时,我得到了关于打开R的相同结果和消息。

这是我的详细信息:

Mac Yosemite, Version 10.10.2
R version 3.1.2 (2014-10-31) 
Platform: x86_64-apple-darwin13.4.0 (64-bit)

我有Java版本8更新31.我运行java -version并收到此消息:“没有Java运行时,请求安装。” 所以我安装了Java SE Development Kit 8u31 现在:

java -version
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)

这没有做到这一点,因为运行library(xlsx)仍然崩溃程序并抛出警告。 我是否需要以某种方式回滚到Java SE 6运行时,还是有办法使用我安装的最新版本?

这个SO帖子似乎是相关的,但我不清楚安装Java 6的安装解决方案。答案链接到似乎过时的苹果支持页面

我不熟悉Java,所以我可以使用一些建议。

相反,你安装的java下载这个

https://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US

安装后,您的问题将得到解决

这对我有用:在〜/ .profile中设置两个env变量

export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
export LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/server

我可以在Rstudio中安装rJava和xlsx包。 不可否认,它需要数小时的修补(无意识地)才能使它恰到好处。

我能够让rJava加载Java 8.看起来这是一个问题,RStudio没有将某些环境变量传递给Yosemite的rsession。 希望他们能尽快修复它,但同时您可以在终端中自行传递环境变量。 运行这个:

$ LD_LIBRARY_PATH = $(/ usr / libexec / java_home)/ jre / lib / server:open -a RStudio

基本上你在这里做的是运行java_home可执行文件,它返回你的Java路径,然后附加jre / lib / server目录。 这被分配给LD_LIBRARY_PATH,这是RStudio正确需要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM