Як збільшити ліміт пам’яті IDE в IntelliJ IDEA на Mac?


316

Я використовую IDEA 12 Leda на гірському Леві. Я хотів збільшити максимальну пам'ять, яку IDE може використовувати. Я встановив VMOptions у файлі Info.plist таким, який буде -Xmx2048m -ea -XX:+HeapDumpOnOutOfMemoryError -Xverify:none -Xbootclasspath/a:../lib/boot.jar

Коли я відкриваю IDEA, я все ще бачу, щоб максимальна пам'ять була 711 м.

jps -v показує, що мій VMOptions завантажений, але його замінюють наступні параметри.

29388  **-Xmx2048m** -ea -XX:+HeapDumpOnOutOfMemoryError -Xverify:none -Xbootclasspath/a:../lib/boot.jar -Xms128m **-Xmx800m** -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=64m -XX:+UseCodeCacheFlushing -XX:+UseCompressedOops -Didea.paths.selector=IdeaIC12 -Dsun.java2d.noddraw=true -Didea.max.intellisense.filesize=2500 -Didea.dynamic.classpath=false -Didea.jars.nocopy=false -Dsun.java2d.d3d=false -Dapple.awt.fullscreencapturealldisplays=false -Dapple.laf.useScreenMenuBar=true -Djava.endorsed.dirs= -Dswing.bufferPerWindow=false -Didea.fatal.error.notification=enabled -Didea.cycle.buffer.size=1024 -Didea.popup.weight=heavy -Didea.xdebug.key=-Xdebug -Dapple.awt.graphics.UseQuartz=true -Dsun.java2d.pmoffscreen=false -Didea.no.launcher=false -DCVS_PASSFILE=~/.cvspass -Didea.use.default.antialiasing.in.editor=false -Dcom.apple.mrj.application.live-resize=false -Didea.smooth.progress=false
29392 Jps -Dapplication.home=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home -Xms8m

Звідки береться -Xmx800? Мені потрібно його зняти.


4
лише зауважте, що для 64-бітового імені файлу потрібно бути idea64.vmoptions
Іттай

@Ittai для мене idea.vmoptions працює і для 64 біт, а також на mac os 10.9
Koray Tugay

У ОС X 10.10.3 з IntelliJ 14 мені довелося перейменувати ~/Library/Preferences/IdeaIC14/idea.vmoptionsдо того, idea64.vmoptionsяк він визнає зміну, тобто -Xmx2048m.

В ОС X 10.11 Intellij 15 64-розрядний мені довелося перейменувати idea64.vmoptions в idea.vmoptions, щоб змусити його працювати.
himanshu shekhar

Дивіться також розслідування варіантів IDEA на tomaszdziurko.com/2015/11/…
Григорій

Відповіді:


577

Поточна версія: Help| Change Memory Settings:

Змінення налаштувань пам'яті

Оскільки IntelliJ IDEA 15.0.4 ви також можете використовувати: Help| Edit Custom VM Options...:

Це автоматично створить копію .vmoptionsфайлу в папці config та відкриє діалогове вікно для його редагування.


Старіші версії:

IntelliJ IDEA 12 - це підписана програма, тому змінювати параметри в Info.plistбільше не рекомендується, оскільки підпис не збігатиметься, і ви отримаєте проблеми залежно від налаштувань безпеки системи (додаток або не запуститься, або брандмауер буде скаржитися при кожному запуску, або додаток не зможе використовувати зберігання клавіш системи для збереження паролів).

В результаті звернення до IDEA-94050 в IDEA 12 був введений новий спосіб надання опцій JVM:

Тепер він може приймати параметри VM від ~/Library/Preferences/<appFolder>/idea.vmoptionsта властивості системи від ~/Library/Preferences/<appFolder>/idea.properties.

Наприклад, щоб використовувати -Xmx2048m варіант , ви повинні скопіювати початковий .vmoptionsфайл з /Applications/IntelliJ IDEA.app/bin/idea.vmoptionsдо ~/Library/Preferences/IntelliJIdea12/idea.vmoptions, а потім змініть -Xmxнастройки.

Кінцевий файл повинен виглядати так:

-Xms128m
-Xmx2048m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=64m
-XX:+UseCodeCacheFlushing
-XX:+UseCompressedOops

Копіювання оригінального файлу важливо, оскільки опції не додаються , вони замінюються .

Таким чином ваші користувацькі параметри зберігатимуться між оновленнями та файлами додатків, вони не змінюються, що робить перевірку підписів щасливою.


Community Edition : ~/Library/Preferences/IdeaIC12/idea.vmoptionsзамість цього використовується файл.


7
цей файл працював для мене: /Users/<user>/Library/Preferences/IdeaIC12/idea.vmoptions
PaulG

1
Ні / Програми ..., ні ~ / Бібліотека ... для мене не працює (все ще намагаюся) - я все ще на Snow Leopard, якщо це має значення.
mparaz

7
На Mac OS X 10.8.3 та IntelliJ IDEA Ultimate 12.1.4 була правильна команда $ cp -i /Applications/IntelliJ\ IDEA\ 12.app/bin/idea.vmoptions ~/Library/Preferences/IntelliJIdea12/. Це відповідає останнім документам конфігурації IDEA на веб- сайті jetbrains.com/idea/webhelp/increasing-memory-heap.html, як згадує michael-m.
Майкл Г. Нолл

6
cp /Applications/IntelliJ\ IDEA\ 13.app/bin/idea.vmoptions ~/Library/Preferences/IntelliJIdea13/idea.propertiesа потімvi ~/Library/Preferences/IntelliJIdea13/idea.properties
Дарій М.

2
Якщо ви перебуваєте на OSX та використовуєте PHPStorm, ви можете скопіювати його в ~ / Бібліотека / Налаштування / WebIde80 / idea.properties (використовуйте WebIde70, якщо ви використовуєте phpstorm 7)
Mixologic

104

Корисна хитрість, яку я думав, поділюся на цій старій темі.

Ви можете бачити, скільки використовується пам'ять, і відповідно коригувати речі, використовуючи Show memory indicatorналаштування.

введіть тут опис зображення

Він відображається в нижній правій частині вікна.

введіть тут опис зображення


9
Переконайтеся, що ви також увімкнули ViewStatus Bar.
TrophyGeek

Вау, ви використовуєте -Xmx = 8G?
Кедар Массваде

Чи є якийсь спосіб, щоб це показало використання пам'яті програми, яку ви запускаєте від IntelliJ, а не використання пам'яті IDE?
OscarVanL

14

Для Mavericks IDEA 13 та OS X 10.9 правильні шляхи:

Оригінал: / Програми / IntelliJ IDEA 13.app/Contents/bin/idea.vmoptions

Скопіюйте у: ~ / Бібліотека / Налаштування / IntelliJIdea13 / idea.vmoptions


У мене немає папки IntelliJIdea13 всередині ~ / Бібліотека / Налаштування. Спробував створити його і помістити файл всередину, але не пощастило. Будь-які інші поради?
Тіаго

11

Ось посилання на останню документацію на сьогодні http://www.jetbrains.com/idea/webhelp/increasing-memory-heap.html


Це лише про збільшення купи для компілятора, а не для IDE.
Заєнц

3
@Zayenz :: Неправдиво. Це не «тільки» про збільшення купи для процесу складання, але він також включає в себе інформацію для відповіді на питання - тобто в відповідно до «Записками» він говорить .... The memory heap available to IntelliJ IDEA may be changed by editing the corresponding VM options. Depending on the platform, these files are:..... - TLDR для вас?
MikeM

1
@ michael-m Вибачте. Я читав, але якось пропустив цю замітку. Дякуємо, що виправили мене.
Заєнц

5

Щодо версії intellij2018, то для кращої продуктивності я використовую наступну конфігурацію

-server
-Xms1024m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=512m
-XX:+UseCompressedOops
-Dfile.encoding=UTF-8
-XX:+UseConcMarkSweepGC
-XX:+AggressiveOpts
-XX:+CMSClassUnloadingEnabled
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing
-XX:CMSIncrementalDutyCycleMin=0
-XX:-TraceClassUnloading
-XX:+TieredCompilation
-XX:SoftRefLRUPolicyMSPerMB=100
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Xverify:none

-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof

Дякую Avishek..Будемо неодмінно спробувати цей конфігурацію на intellij IDEA 2018
gaurav

4

перейдіть по цьому шляху "C: \ Program Files (x86) \ JetBrains \ IntelliJ IDEA 12.1.4 \ bin \ idea.exe.vmoptions" та змініть розмір на -Xmx512m

  -Xms128m
  -Xmx512m
  -XX:MaxPermSize=250m
  -XX:ReservedCodeCacheSize=64m
  -XX:+UseCodeCacheFlushing
  -ea
  -Dsun.io.useCanonCaches=false
  -Djava.net.preferIPv4Stack=true

сподіваюся, що це спрацює


8
Це стосується Windows, але не для OSX, про що йдеться.
cdeszaq

1
знайшов це, і це допомогло мені у windows! Дякую!
WebComer

3

OSX 10.9, якщо ви не турбуєтесь про підписану програму, ви можете просто змінити

/Applications/IntelliJ\ IDEA\ 12\ CE.app/bin/idea.vmoptions

2

Схоже, IDEA вирішує це за вас (як і все інше). Завантажуючи великий проект і даючи йому змолоти, він відкриє діалогове вікно для збільшення налаштувань пам'яті. Якщо ввести 2048 для Xmx і натиснути "Shutdown", то перезапуск IDEA запускає IDEA з більшою кількістю пам'яті. Це, здається, працює добре для Mac OS, хоча він, як видається, не зберігається в Windows (не впевнений у IDEA 12).


1

На моїй машині це працює лише bin/idea.vmoptions, якщо додавання цього параметра ~/Library/Preferences/IntelliJIdea12/idea.vmoptionsспричиняє зависання IDEA під час запуску.


Будь ласка, дивіться мою оновлену відповідь. Зауважте, що idea.vmoptionsпараметри Preferencesне додає, він замінює їх. Тому вам потрібно скопіювати оригінальний файл із binкаталогу та змінити його.
CrazyCoder


1

Більш новітні версії IntelliJ (безумовно, WebStorm та PhpStorm) зробили цю зміну ще простішою, додавши Help >> Change Memory Settingsпункт меню, який відкриє діалогове вікно, де можна встановити ліміт пам’яті.

пункт меню, щоб показати налаштування межі пам'яті Діалогове вікно налаштування пам'яті


0

Я використовую Mac і Idea 14.1.7. Тут знайдено файл idea.vmoptions: / Програми / IntelliJ IDEA 14.app/Contents/bin

деталі

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.