Intellij heap size, Initial heap size set to a larger value than the maximum heap size
我是Java的初学者,刚开始使用Intellij作为我的IDE。
当我使用它时,有时会延迟。
我将xms和xmx更改为较大的堆大小(xms = 1024,xmx = 2048),但是会引发错误。
所以,我回滚了。
错误消息是这样的:"初始堆大小设置为大于最大堆大小的值"。
问题是什么?
如果可能,如何增加最大堆大小?
我使用的是笔记本电脑,它有8GB的内存。 使用x64 Intellij.exe。
如果您在2019.2更新之后在InteliJ中看到此错误,那是因为此更新将JVM XMX值更改为2048m,而没有检查相关值,这可能会使XMS变得大于无效的最大XMX值并产生该错误。
即我的值是XMX = 6000m和XMS = 4096m,但是在2019.2更新之后,它们是XMX = 2048m和XMS = 4096m
您将必须手动更改值,以使XMS等于或小于XMX。在Mac上,VM选项文件为?/ Library / Preferences / IntelliJIdea2019.2 / idea.vmoptions
注意:该路径假定您使用的是InteliJ版本2019.2。您将需要在您所使用的版本的路径中将该值更改为
我在Linux上遇到了同样的问题。该配置文件位于
该目录看起来像?/ .IntelliJIdeayyyyy.n / config,其中yyyy是年份,n是该年份的发行版号。
确保
这是我使用8GB RAM的ubuntu 18.04的工作配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | # custom IntelliJ IDEA VM options -server -Xms4096m -Xmx4096m -XX:NewSize=1024m -XX:MaxNewSize=1512m -XX:NewRatio=1 -XX:+UseParNewGC -XX:ParallelGCThreads=4 -XX:MaxTenuringThreshold=1 -XX:SurvivorRatio=8 -XX:+UseCodeCacheFlushing -XX:+UseConcMarkSweepGC -XX:+AggressiveOpts -XX:+CMSClassUnloadingEnabled -XX:+CMSIncrementalMode -XX:+CMSIncrementalPacing -XX:+CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=65 -XX:+CMSScavengeBeforeRemark -XX:+UseCMSInitiatingOccupancyOnly -XX:ReservedCodeCacheSize=64m -XX:-TraceClassUnloading -ea -Dsun.io.useCanonCaches=false |
我在MAC的IntelliJ中也遇到了同样的问题。
IntelliJ中有一个构建过程堆大小配置。您可以在以下位置找到此设置
Preferences > Compiler > Build Process Heap Size
确保Xmx值(在环境或VM选项中)低于设置中的值。如果不是,请在IntelliJ设置中增加" Build Process Heap Size",或在VM选项中减小" Xmx"值。
默认情况下,"构建过程堆大小"为700m。
使用帮助|编辑自定义VM选项,仅将
您的问题可能根本与内存设置无关。本文档介绍了报告性能问题的正确方法。您需要捕获CPU快照,并将其提交给JetBrains支持或问题跟踪器。