gpt4 book ai didi

java - 如何分配超过 1gb 到 netbeans JVM?

转载 作者:IT王子 更新时间:2023-10-29 01:23:51 26 4
gpt4 key购买 nike

我试图为 Netbeans 的 jvm 分配超过 1 GB 的 RAM,但没有成功。我有一个非常大的 maven 项目要处理,netbeans 在所有项目打开后立即内存不足。

我在 Gentoo linux 上工作:

 Linux myHost 3.2.12-gentoo #3 SMP Mon Jul 2 14:27:56 CEST 2012 i686
Intel(R) Xeon(R) CPU E31245 @ 3.30GHz GenuineIntel GNU/Linux

$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 129570
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 129570
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited

我盒子的内存是:

# cat /proc/meminfo 
MemTotal: 16585504 kB
MemFree: 11731232 kB
...

当我设置 -J-Xmx3024m 时,我收到了这些消息:

/opt/netbeans-7.2/bin/netbeans 
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

谢谢!

最佳答案

可以引用Maximum Java heap size of a 32-bit JVM on a 64-bit OS ,了解如何确定最大堆大小的限制。这并不意味着如果你的盒子上有 99GB 的 RAM,你可以将 90Gigs 分配给 JVM

此外,这取决于您有多少可用内存,您的操作系统,然后是 netbeans,您的服务器,它们也需要一定量的内存。您只能将可用内存量分配给您的 JVM

消息 Could not reserve enough space for object heap 表示 3024 MB 不可用于分配。尝试减少它

看起来像在 Linux 上,每个进程允许的最大内存是 3gigs。尽管您不能将所有这些都分配给 jvm 堆,因为它也需要 premGem 等的内存。我在上面提到的线程.. 那里的帖子说,他成功地使用了 2.2 GB。

关于java - 如何分配超过 1gb 到 netbeans JVM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13685402/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com