Intellij堆大小,初始堆大小设置为大于最大堆大小的值

时间:2017-11-02 02:05:18

标签: java memory intellij-idea heap-memory

我是Java的初学者,我刚开始使用Intellij作为我的IDE。

当我使用它时,有时会延迟。

我更改了我的xms和xmx以获得更大的堆大小(xms = 1024,xmx = 2048),但它会引发错误。

所以,我把它翻了回来。

错误消息是这样的:"初始堆大小设置为大于最大堆大小的值#34;。

有什么问题?

如果可能,如何增加最大堆大小?

我使用笔记本电脑,它有8GB内存。 x64使用Intellij.exe。

3 个答案:

答案 0 :(得分:15)

如果在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。版本。如果

,则需要在所使用版本的路径中更改该值。

答案 1 :(得分:0)

我在Linux上遇到了同样的问题。该配置文件位于 ~/.IntelliJIdea2018.2/config/idea64.vmoptions 该目录看起来像〜/ .IntelliJIdeayyyyy.n / config,其中yyyy是年份,n是该年份的发行版号。 确保 -Xms的值高于-Xmx 这是我使用8GB RAM的ubuntu 18.04的工作配置

# 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

答案 2 :(得分:-1)

使用帮助| Edit Custom VM Options,仅将-Xmx值更改为2GB或您需要的任何值,-Xms值应该更低或相同。请注意,堆太高会导致GC暂停时间更长。

您的问题可能与内存设置无关。报告性能问题的正确方法是described in this document。您需要捕获CPU快照并将其提交给JetBrains支持或问题跟踪器。