java - 使用 Windows 的 NetBeans 中忽略的最大内存大小

标签 java memory-management netbeans

我不确定这是否是一个有效的 stackoverflow 问题!

我已经在 Windows XP 计算机上安装了 NetBeans。然而,这台机器的内存非常有限。由于 Netbeans 使用大部分内存,我想限制 Netbeans 使用的内存大小。

据我所知page是我可以在配置文件中使用 -J-Xmx256m 开关或 –J-XX:MaxPermSize 开关:./etc/netbeans.conf

所以我把它改成这样:

netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:MaxPermSize=256m -J-XX:PermSize=32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.dpiaware=true -J-Dsun.zip.disableMemoryMapping=true"

我尝试了这两个选项,但是 Netbeans 要么不启动,要么启动后不支持新策略。当它启动时,我看到任务管理器中的 netbeans 内存增加到超过指定的 256MB。

我做错了什么?

最佳答案

Java 中有更多类型的内存。使用MaxPermSize,您可以增加永久代内存的最大值,该内存用于存储有关您的类的“静态”信息。您想要增加“动态”数据的内存。这就是堆,为此使用 -J-Xmx。您可以使用 jvisualvm 验证您的设置。

因此,要增加堆,请尝试以下操作:

-J-Xmx512m

如果您使用的是 32 位 Java,您的内存在某种程度上会受到限制,我认为是 1g。如果您使用无效(太大)的设置,Netbeans 将不会启动。

Netbeans 在其内存显示中显示的内存是 PermGenSpace 和 Heap 的相加。再次强调:查看 jvisualvm 来控制每种内存类型的使用设置。

关于java - 使用 Windows 的 NetBeans 中忽略的最大内存大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21875171/

相关文章:

java - 房间数据库查询

java - Java 中的泛型无效

java - 将数组列表写入文本文件

c# - .net 应用程序在内存中的大小

java - 创建java程序来运行ADB命令

java - 如何过滤掉 <DataFolder_object>.getNodeDelegate() 创建的树中的特定条目

java - spring-framework-bom :jar:4. 0.1.RELEASE 的 netbeans maven Web 应用程序中的依赖项解析异常

java.lang.NoSuchFieldError : APPDEFAULT 错误

c - 释放我仍然需要的内存的问题,链表

c++ - 在 C++ 中为客户端套接字类使用动态内存分配