我在干净的 Ubuntu 14.04 上全新安装了 RStudio Server (Pro)。安装很顺利,我遇到的唯一问题是 rJava。其他一切似乎都运行良好。
为了安装 rJava 包,我从控制台安装了 R 包(以 sudo 运行)。这是我在设置 RStudio 服务器时一直在做的事情。安装 rJava 后,可以从 R 控制台以 sudo 或普通用户的身份正常工作。
从 RStudio IDE 我可以加载 rJava 包,但是当我调用 .jinit() 时出现错误:
library(rJava)
.jinit()
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error in .jinit() : Cannot create Java virtual machine (-4)
这与我以相同用户身份直接 ssh 到服务器并从 R 控制台运行相同命令时发生的情况相反——这不会产生任何错误。
知道这里发生了什么吗?我四处搜寻并没有找到任何有帮助的东西。我尝试完全卸载openjdk,尝试重新安装软件包。似乎没有任何效果 - 因为我在终端上的 R 控制台和 RStudio Server 中的 R 控制台之间得到了不同的行为,所以我有点困惑。
控制台上的 R 版本为:
$platform
[1] "x86_64-pc-linux-gnu"
$arch
[1] "x86_64"
$os
[1] "linux-gnu"
$system
[1] "x86_64, linux-gnu"
$status
[1] ""
$major
[1] "3"
$minor
[1] "1.2"
$year
[1] "2014"
$month
[1] "10"
$day
[1] "31"
$`svn rev`
[1] "66913"
$language
[1] "R"
$version.string
[1] "R version 3.1.2 (2014-10-31)"
$nickname
[1] "Pumpkin Helmet"
这与 R Studio Server 使用的版本相同。
JAVA_HOME 与终端上的 R 控制台和 RStudio Server 中的 R 控制台相同
> Sys.getenv('JAVA_HOME')
[1] "/usr/lib/jvm/java-1.7.0-openjdk-amd64/jre"
这与我从 shell 获得的 JAVA_HOME 相同。
我有以下java版本:
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)
希望得到同样问题困扰的人们的一些建议或意见。
干杯,马特