Jak zwiększyć limit pamięci IDE w IntelliJ IDEA na Macu?

316

Używam IDEA 12 Leda na Mountain Lion. Chciałem zwiększyć maksymalną pamięć, której IDE może użyć. Ustawiłem VMOptions w pliku Info.plist na -Xmx2048m -ea -XX:+HeapDumpOnOutOfMemoryError -Xverify:none -Xbootclasspath/a:../lib/boot.jar

Po otwarciu IDEA nadal widzę maksymalną pamięć wynoszącą 711 m.

jps -v pokazuje, że moje VMOptions zostało załadowane, ale zostało zastąpione następującymi opcjami.

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

Skąd -Xmx800pochodzi? Muszę to usunąć.

lasy
źródło
4
po prostu pamiętać, że dla 64-bitowych potrzeby nazwę, aby być idea64.vmoptions
Ittai
@Ittai dla mnie idea.vmoptions działa również w wersji 64-bitowej w systemie Mac OS 10.9
Koray Tugay
W systemie OS X 10.10.3 z IntelliJ 14 musiałem zmienić nazwę, ~/Library/Preferences/IdeaIC14/idea.vmoptionsaby idea64.vmoptionsrozpoznać zmianę, tj -Xmx2048m.
W 64-bitowym systemie OS X 10.11 Intellij 15 musiałem zmienić nazwę idea64.vmoptions na idea.vmoptions, aby działało.
himanshu shekhar
Zobacz także dochodzenie w sprawie opcji IDEA na tomaszdziurko.com/2015/11/…
Grigory Kislin

Odpowiedzi:

577

Aktualna wersja: Help| Change Memory Settings:

Zmień ustawienia pamięci

Od IntelliJ IDEA 15.0.4 możesz także używać: Help| Edit Custom VM Options...:

Spowoduje to automatyczne utworzenie kopii .vmoptionspliku w folderze config i otworzy okno dialogowe do edycji.


Starsza wersja:

IntelliJ IDEA 12 jest aplikacją podpisaną, dlatego zmiana opcji w Info.plistnie jest już zalecana, ponieważ podpis nie będzie pasował i pojawią się problemy w zależności od ustawień bezpieczeństwa systemu (aplikacja nie będzie działać lub zapora będzie narzekać przy każdym uruchomieniu, lub aplikacja nie będzie mogła używać systemowego magazynu kluczy do zapisywania haseł).

W wyniku zaadresowania IDEA-94050 w IDEA 12 wprowadzono nowy sposób dostarczania opcji JVM:

Teraz może pobierać opcje VM ~/Library/Preferences/<appFolder>/idea.vmoptionsi właściwości systemu ~/Library/Preferences/<appFolder>/idea.properties.

Na przykład, aby użyć opcji -Xmx2048m , należy skopiować oryginalny .vmoptionsplik z /Applications/IntelliJ IDEA.app/bin/idea.vmoptionsdo ~/Library/Preferences/IntelliJIdea12/idea.vmoptions, a następnie zmodyfikować -Xmxustawienie.

Ostateczny plik powinien wyglądać następująco:

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

Kopiowanie oryginalnego pliku jest ważne, ponieważ opcje niedodawane , są zastępowane .

W ten sposób Twoje niestandardowe opcje zostaną zachowane między aktualizacjami, a pliki aplikacji pozostaną niezmodyfikowane, dzięki czemu moduł sprawdzania podpisów będzie szczęśliwy.


Wersja wspólnotowa : ~/Library/Preferences/IdeaIC12/idea.vmoptionszamiast tego używany jest plik.

CrazyCoder
źródło
7
ten plik działał dla mnie: /Users/<user>/Library/Preferences/IdeaIC12/idea.vmoptions
PaulG
1
Ani / Aplikacje ... ani ~ / Biblioteka ... nie działają dla mnie (wciąż próbuję) - wciąż jestem na Snow Leopard, jeśli to ma znaczenie.
mparaz
7
W systemach Mac OS X 10.8.3 i IntelliJ IDEA Ultimate 12.1.4 poprawne polecenie brzmiało $ cp -i /Applications/IntelliJ\ IDEA\ 12.app/bin/idea.vmoptions ~/Library/Preferences/IntelliJIdea12/. Jest to zgodne z najnowszymi dokumentami konfiguracyjnymi IDEA pod adresem jetbrains.com/idea/webhelp/increase-memory-heap.html, jak wspomniał michael-m.
Michael G. Noll,
6
cp /Applications/IntelliJ\ IDEA\ 13.app/bin/idea.vmoptions ~/Library/Preferences/IntelliJIdea13/idea.propertiesa następnievi ~/Library/Preferences/IntelliJIdea13/idea.properties
Dariusz M.
2
Jeśli korzystasz z OSX i używasz PHPStorm, możesz skopiować go do ~ / Library / Preferences / WebIde80 / idea.properties (użyj WebIde70, jeśli używasz phpstorm 7)
Mixologic
104

Pomocna sztuczka, którą pomyślałem, że podzielę się tym starym wątkiem.

Możesz zobaczyć, ile pamięci jest używane i odpowiednio dostosować ustawienia, używając tego Show memory indicatorustawienia.

wprowadź opis zdjęcia tutaj

Pokazuje się w prawym dolnym rogu okna.

wprowadź opis zdjęcia tutaj

TrophyGeek
źródło
9
Upewnij się, że masz również włączoną ViewStatus Bar.
TrophyGeek
Wow, używasz -Xmx = 8G?
Kedar Mhaswade
Czy jest jakiś sposób, aby to pokazało użycie pamięci przez aplikację uruchomioną z IntelliJ, zamiast użycia pamięci IDE?
OscarVanL
14

W przypadku IDEA 13 i OS X 10.9 Mavericks prawidłowe ścieżki to:

Oryginał: / Aplikacje / IntelliJ IDEA 13.app/Contents/bin/idea.vmoptions

Skopiuj do: ~ / Library / Preferences / IntelliJIdea13 / idea.vmoptions

ujay68
źródło
Nie mam folderu IntelliJIdea13 wewnątrz ~ / Library / Preferences. Próbowałem go utworzyć i umieścić plik w środku, ale bez powodzenia. Jakieś inne wskazówki?
Tiago
11

Oto link do najnowszej dokumentacji na dzień dzisiejszy http://www.jetbrains.com/idea/webhelp/increase-memory-heap.html

MikeM
źródło
Chodzi tylko o zwiększenie sterty dla kompilatora, a nie dla IDE.
Zayenz
3
@Zayenz :: False. To nie jest „tylko” o zwiększenie sterty dla procesu kompilacji, ale zawiera również informacje, aby odpowiedzieć na pytanie - czyli pod „Notes” mówi .... The memory heap available to IntelliJ IDEA may be changed by editing the corresponding VM options. Depending on the platform, these files are:..... - TLDR dla ciebie?
MikeM
1
@ michael-m Przepraszamy. Przeczytałem, ale jakoś przegapiłem tę notatkę. Dzięki za poprawienie mnie.
Zayenz,
5

Jeśli chodzi o wersję intellij2018, używam następującej konfiguracji dla lepszej wydajności

-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 Bhattacharya
źródło
Dzięki Avishek .. Na pewno spróbuję tej konfiguracji na Intellij IDEA 2018
gaurav
4

przejdź do tej ścieżki „C: \ Program Files (x86) \ JetBrains \ IntelliJ IDEA 12.1.4 \ bin \ idea.exe.vmoptions” i zmień rozmiar na -Xmx512m

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

mam nadzieję, że zadziała

Rinkesh
źródło
8
Dotyczy to systemu Windows, ale nie OSX, o to właśnie chodzi.
cdeszaq
1
znalazłem i pomógł mi w systemie Windows! Dzięki!
WebComer
3

OSX 10.9, jeśli nie przejmujesz się podpisaną aplikacją, możesz to po prostu zmienić

/Applications/IntelliJ\ IDEA\ 12\ CE.app/bin/idea.vmoptions
Raul
źródło
2

Wygląda na to, że IDEA rozwiązuje to za Ciebie (jak wszystko inne). Po wczytaniu dużego projektu i pozostawieniu go w gotowości, otworzy się okno dialogowe z ustawieniami pamięci. Wpisanie 2048 dla Xmx i kliknięcie „Zamknij”, a następnie ponowne uruchomienie IDEA powoduje, że IDEA uruchamia się z większą ilością pamięci. Wydaje się, że działa to dobrze w systemie Mac OS, chociaż wydaje się, że nigdy nie utrzymuje się w systemie Windows (nie jestem pewien co do IDEA 12).

Michael Bushe
źródło
1

Na moim komputerze to działa tylko bin/idea.vmoptions, dodanie tego ustawienia ~/Library/Preferences/IntelliJIdea12/idea.vmoptionspowoduje zawieszenie się IDEA podczas uruchamiania.

Zack
źródło
Proszę zobaczyć moją zaktualizowaną odpowiedź. Zauważ, że idea.vmoptionsw opcji Preferencesnie dodaje opcji, zastępuje je. Dlatego musisz skopiować oryginalny plik z binkatalogu, a następnie zmodyfikować go.
CrazyCoder,
1

Nowsze wersje IntelliJ (z pewnością WebStorm i PhpStorm) jeszcze bardziej ułatwiły tę zmianę, dodając Help >> Change Memory Settingspozycję menu, która otwiera okno dialogowe, w którym można ustawić limit pamięci.

element menu, aby wyświetlić ustawienie limitu pamięci okno dialogowe ustawień pamięci

Sok z żuka
źródło
0

Używam Maca i Idea 14.1.7. Znaleziono plik idea.vmoptions tutaj: / Applications / IntelliJ IDEA 14.app/Contents/bin

Detale

Denys
źródło