繁体   English   中英

R 32位中的Java堆空间错误

[英]Java heap space error in R 32 bit

我在尝试使用包xlsx read.xlsx函数时read.xlsx R 错误。 错误说“

.jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, :java.lang.OutOfMemoryError: Java heap space

我试过使用openxlsx包,它工作正常,但我只想使用xlsx包。 我还尝试设置 java 参数以在从 R 会话卸载所有包后增加堆空间,但它不起作用。 我在 64 位系统上使用 32 位 R、32 位 Java,并在我的环境变量中声明了所有可能的路径。

非常感谢您的帮助!

我不知何故以不可重现的方式遇到了这个问题,部分使用-Xmx8g解决了它,但随机遇到了问题。

在这里使用不同的垃圾收集器描述了一个选项

options(java.parameters = c("-XX:+UseConcMarkSweepGC", "-Xmx8192m"))
library(xlsx)

在脚本的开头和加载任何其他包之前,因为其他包可以自己加载一些 java 东西,并且必须在加载任何 Java 之前设置选项。

到此为止,问题没有再出现。

只是有时在长时间的会话中它仍然会发生。 但在这种情况下,会话重启通常可以解决问题。

暂无
暂无

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

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