Neo4j需要更多内存,但是“ Java无法为对象堆保留足够的空间”(Windows 10)

时间:2018-10-19 00:40:27

标签: java neo4j

Neo4j(社区版本3.4.8)抱怨“没有足够的内存来执行当前任务”,并建议更改配置文件中的一行,以增加“ dbms.memory.heap.max_size < / strong>”

如果我将该值增加得太少,则内存不足问题仍然存在。如果我增加太多,在neo4j的启动过程中,它会抱怨:

  

“ VM初始化期间发生错误

     

无法为[一定数量] KB对象堆保留足够的空间”

我在Stack Overflow上找到了一些有关此问题的答案,这些问题通常用于运行Java ...但是我不直接与Java交互。我暗示发出命令“ neo4j console”启动Neo4j,然后Neo4j启动Java。

我在 Windows 10 上,具有“ Java SE开发工具包8更新181 ”和“ Java SE开发工具包8更新181(64位)” ”。

顺便说一句,我是Java的新手。

谢谢!

2 个答案:

答案 0 :(得分:0)

这是Neo4j memory configuration的文档。在更高版本中,您可以使用neo4j-admin memrec根据当前系统的硬件提供建议设置。

在任何情况下,您都应该升级,因为3.2.8至少比最新版本低两个小版本。至少应考虑沿3.2.x(当前为3.2.13)升级到最新补丁程序版本,以利用错误修复和改进的优势。

答案 1 :(得分:0)

这解决了我的问题:

1)我完全卸载并重新安装了Java 。 Windows 10控制面板再次显示Java SE Development Kit 8 Update 181”和“ Java SE Development Kit 8 Update 181(64位)”

2)我将Neo4j升级到了最新版本(社区版3.4.9

它现在正在工作:))))也就是说,在解决了不再找到Java的问题之后,documented and resolved here。另一个问题似乎是指有2种Java版本,分别是32位和64位Java,而以某种方式看到了32位Java。大概是最初问题的原因。

偶然地,我在NEO4J_HOME\conf\neo4j.conf文件中所做的确切更改是:

dbms.memory.heap.initial_size=512m # Uncommented
dbms.memory.heap.max_size=1212m # Uncommented and increased value