如何使用 rJava 初始化具有更大最大堆大小的 JVM

How to initialise JVM with larger maximum heap size using rJava

我正在尝试在 R 中使用 Stanford NLP 工具 (Java),使用 rJava 包。尝试创建 StanfordCoreNLP 对象时出现以下错误:

Error in .jnew("edu/stanford/nlp/pipeline/StanfordCoreNLP", props) : java.lang.OutOfMemoryError: Java heap space

为了解决这个问题,我尝试使用以下代码的变体以更大的最大堆大小初始化 JVM:

.jinit(parameters=c("-Xms1g","-Xmx4g"))

当使用 -Xmx1g 将最大堆设置为 1GB 时,JVM 加载但我继续得到 OutOfMemoryError。当最大堆大小设置为 2 或 3 GB(-Xmx2g-Xmx3g)时,R 将停止响应。当设置为 4GB 或更高时 -Xmx4g 我将收到以下消息:

Error in .jinit(parameters = c("-Xms1g", "-Xmx4g"), force.init = TRUE) : Cannot create Java virtual machine (-6)

如何使用 rJava 将 JVM 成功初始化为大于 1GB 的值?我正在使用 Java (v8 u51) 和 R (v3.2.0)

的 32 位版本

I am using 32bit versions of Java (v8 u51) and R (v3.2.0)

这就是你的问题所在。切换到 64 位版本。