我使用的是64位Ubuntu和java VM64位版本。
我有8GB内存。
我无法将java堆大小更改为4096M,甚至2048M也不行。
我试过这些东西:
uname -i
产出:
x86_64
java -version
OpenJDK 64位服务器VM(构建11.0.4+11-post-ubuntu-1ubuntu218.04.3,混合模式,共享)
当我试图更改堆大小时:
java -Xmx:4096m
输出
java -XX:+PrintFlagsFinal -version | grep HeapSize
size_t ErgoHeapSizeLimit = 0 {product} {default}
size_t HeapSizePerGCThread = 43620760 {product} {default}
size_t InitialHeapSize = 130023424 {product} {ergonomic}
size_t LargePageHeapSizeThreshold = 134217728 {product} {default}
size_t MaxHeapSize = 2067791872 {product} {ergonomic}
uintx NonNMethodCodeHeapSize = 5835340 {pd <p>product} {ergonomic}
uintx NonProfiledCodeHeapSize = 122911450 {pd <p>product} {ergonomic}
uintx ProfiledCodeHeapSize = 122911450 {pd <p>product} {ergonomic}
openjdk version "11.0.4" 2019-07-16
OpenJDK Runtime Environment (build 11.0.4+11-post-Ubuntu-1ubuntu218.04.3)
OpenJDK 64-Bit Server VM (build 11.0.4+11-post-Ubuntu-1ubuntu218.04.3, mixed mode, sharing)
首先检查默认值:
java -XshowSettings:vm
然后需要编辑JVM的设置文件:sudo vim/etc/profile
将其添加到文件的开头:
export _JAVA_OPTIONS=-Xmx(size you want in here)m
按ESC,键入:wq
并按Enter
java -XshowSettings:vm
问题内容: 有没有办法我可以在自己的计算机上为jvm设置默认堆大小?我想将其设置为1g,因为我一直在运行自定义程序,这些程序始终会达到默认jvm大小的超额点。 我只是不想记住每次我从命令行运行Java应用程序时都要键入-XmX1g … 必须有一种管理方式来做到这一点吗? 问题答案: 显然,它也可以在Linux上运行:
问题内容: 我正在使用具有8 GB RAM的Windows 2003服务器(64位)。如何增加堆内存的最大值?我正在使用该标志将堆大小增加到1500 Mb。是否可以将堆内存增加到物理内存(6 GB堆)的75%? 问题答案: 你可以在32位系统上增加到4GB。如果你使用的是64位系统,则可以更高。如果你选择的错误,不用担心,如果你在32位系统上要求5g,则Java会抱怨一个无效的值并退出。 正如其他
问题内容: 我问了这个问题,以了解如何增加JVM中的运行时调用堆栈大小。我有一个答案,而且我还有很多有用的答案和注释,这些注释和注释与Java如何处理需要大型运行时堆栈的情况有关。我在回答摘要中扩展了我的问题。 最初,我想增加JVM堆栈的大小,以便程序运行时无需安装。 相应的配置设置是具有足够大值的命令行标志。对于TT上面的程序,它可以与OpenJDK的JVM一起工作: 答案之一也指出这些-X…标
我在Intellij 2017中开发了一个Android Flex/AIR应用程序。当我尝试在手机上调试它时,我一直收到内存溢出错误。 它向我显示了正在使用的命令: 擦除最多,但显示内存使用512m。我已经进入了编译器设置,并将“构建进程堆大小”选项设置为2056,但这没有帮助。我还添加了值为“-Xms128-Xmx2056m”的JAVA\u OPTS变量 我不知道Intellij是从哪里得到设置
问题内容: 我收到以下错误: 问题答案: 以下是一些可用来更改堆大小的选项。
问题内容: 我正在尝试增加Java在weka中的堆大小,这会不断崩溃。我使用了建议的行: 但出现以下错误: 我不确定这是什么意思。有什么建议? 问题答案: 我发现实际的问题在中的文件中。我用记事本打开了文件,在文件的中间有一行。 我将行更改为read ,保存了文件并重新加载了weka,这解决了我的问题。 我不确定这是否是正确的方法,但这对我有用。