Как увеличить предел памяти IDE в IntelliJ IDEA на Mac?


316

Я использую IDEA 12 Leda на Mountain Lion. Я хотел увеличить максимальную память, которую может использовать 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 for me idea.vmoptions работает и на 64-разрядных системах Mac OS 10.9
Корай Тугай,

В OS X 10.10.3 с IntelliJ 14 мне пришлось переименовать ~/Library/Preferences/IdeaIC14/idea.vmoptionsего, idea64.vmoptionsпрежде чем он распознает изменение, т -Xmx2048m. Е.

В OS X 10.11 Intellij 15 64-bit мне пришлось переименовать idea64.vmoptions в idea.vmoptions, чтобы он работал.
Химаншу Шекхар

Смотрите также расследование опционов 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:

Теперь он может принимать параметры виртуальной машины ~/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, вы можете скопировать его в ~ / Library / Preferences / WebIde80 / idea.properties (используйте WebIde70, если вы используете phpstorm 7)
Mixologic

104

Полезный трюк, я думал, что поделюсь этим старым потоком.

Вы можете увидеть, сколько памяти используется, и настроить все соответствующим образом, используя Show memory indicatorнастройки.

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

Это появляется в правом нижнем углу окна.

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


9
Убедитесь, что у вас включен ViewStatus Bar.
TrophyGeek

Вау, вы используете -Xmx = 8G?
Кедар Мхасвейд

Есть ли способ, чтобы это показывало использование памяти приложением, которое вы запускаете из IntelliJ, а не использование памяти IDE?
OscarVanL

14

Для IDEA 13 и OS X 10.9 Mavericks правильные пути:

Оригинал: / Applications / IntelliJ IDEA 13.app/Contents/bin/idea.vmoptions

Копировать в: ~ / Библиотека / Предпочтения / IntelliJIdea13 / idea.vmoptions


У меня нет папки IntelliJIdea13 внутри ~ / Library / Preferences. Пытался создать его и поместить файл внутрь, но не повезло. Любые другие советы?
Тьяго

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 Извините. Я прочитал, но как-то пропустил эту заметку. Спасибо, что поправили меня.
Zayenz

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
нашел, и это помогло мне в окнах! Спасибо!
WebComer

3

OSX 10.9, если вы не беспокоитесь о подписанном приложении, вы можете просто изменить

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

2

Похоже, IDEA решает это для вас (как и все остальное). При загрузке большого проекта и его трогании, он откроет диалоговое окно, чтобы увеличить настройки памяти. Введите 2048 для Xmx и нажмите «Завершение работы», а затем перезапустите 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пункт меню, который открывает диалоговое окно, в котором можно установить предел памяти.

пункт меню, чтобы показать ограничение памяти диалог настроек памяти


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.