web-dev-qa-db-fra.com

PHPStorm / Webstorm augmente la mémoire à plus de 512 Mo

J'utilise PHPStorm sous Win7 64bit Avec 64bit Java (latest version I guess) et travaille actuellement sur un projet incroyablement grand et chaotique. Il y a beaucoup de classes contenant 10k LOC Et plus. Par conséquent, mon PHPStorm manque de mémoire de temps en temps.

J'obtiens cette jolie boîte de dialogue Out-of-Memory Suggérant d'augmenter mes paramètres de mémoire. J'ai actuellement défini dans mon PhpStorm.exe.vmoptions:

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

Le problème est le suivant: lorsque j'augmente la mémoire à utiliser dans ce fichier, l'erreur suivante s'affiche lors du démarrage du programme:

Échec de la création de la machine virtuelle Java: code d'erreur -4

J'ai cherché sur Google mais personne ne semble vouloir que la mémoire soit plus que 512MB.

Quelqu'un sait-il ce que je peux faire pour utiliser à nouveau PHPStorm sans problème?

Bien sûr, je peux réinitialiser le cache, mais ce n'est pas une solution permanente, non?

J'ai lu quelque part que l'ajout de cette ligne à mon vmoptions est une bonne idée, mais je ne vois aucune différence:

-server
....
-XX:MinHeapFreeRatio=15
49
Ron

Assurez-vous que PhpStorm utilise 64 bits Java et non un paquet (qui est 32 bits). Vous vérifiez cela dans Help | About.

De manière générale: avec 64 bits Java, vous n’avez pas besoin de changer cette valeur car elle fonctionne un peu de manière différente à 32 bits un.

1) PhpStorm est livré avec x86 groupé Java et c'est le premier essai, mais c'est seulement à la recherche de other Java installations - cochez PhpStorm.bat pour plus de détails (quelles variables d’environnement et dans quel ordre). En définissant l'une de ces variables d'environnement (qui pointera vers votre installation de 64 bits Java)], vous pouvez indiquer à PhpStorm de l'utiliser plutôt que de la fournir.

2) PhpStorm v8 (actuellement au stade EAP) est livré avec 64- fichiers spécifiques au bit: vous devriez utiliser PhpStorm64.exe et pas PhpStorm.exe (pareil pour .vmoptions fichier - ce devrait être PhpStorm64.exe.vmoptions).

Je ne suis pas sûr de savoir comment PhpStorm v7 fonctionne avec 64 bits Java - je n'ai jamais essayé de cette façon moi-même.


En sélectionnant la version du JDK, le IDE sera exécuté sous

https://intellij-support.jetbrains.com/entries/23455956-Selecting-the-JDK-version-the-IDE-will-run-under

44
LazyOne

La modification des paramètres de mémoire pour PHPStorm a maintenant une option de menu: enter image description here

90

Après avoir lu cet article, je suis passé à la version 64 bits (après avoir installé le JDK correct) et augmenté la mémoire désignée à 2 Go pour le fermer. Mais je frappe toujours au plafond, gèle, etc.

Finalement, j'ai réalisé que j'avais mon bower_componentsdossier suivi. Des dossiers comme celui-ci avec des tonnes de fichiers javascript, etc. va essentiellement manger tous les béliers du monde (j'exclue aussi node_modules dossier maintenant, même histoire). J'ai donc cliqué avec le bouton droit sur le dossier> Marquer le répertoire comme> Exclus. Après un ramassage des ordures, l’empreinte mémoire de PhpStorm a été réduite à 5-600 Mo, ce qui semble raisonnable.

30

PhpStorm 2016.1 et plus récent

A partir de PhpStorm 2016.1 au lieu de WEBIDE_JDK_64, Vous devriez utiliser la variable d'environnement Java_HOME Qui devrait pointer vers votre chemin JVM.

Versions antérieures à PhpStorm 2016.1

Comme cela a été mentionné dans la réponse de @ LazyOne, à partir de PhpStorm v8 (déjà publié), vous pouvez utiliser PhpStorm64.exe. Mais je n’ai trouvé aucune description sur la manière de spécifier le chemin JVM correspondant. Le document qui explique comment sélectionner la version de JDK semble être un peu dépassé.

Après quelques recherches, j'ai découvert que vous devriez créer une variable d'environnement WEBIDE_JDK_64 Qui devrait pointer vers le chemin d'installation JRE 64 bits. Cela fait, vous pourrez démarrer PhpStorm64.exe.

Par défaut, la mémoire maximale est définie sur 750mb. Si vous avez besoin de plus, vous pouvez modifier le C:\Program Files (x86)\JetBrains\PhpStorm 8\bin\PhpStorm64.exe.vmoptions. La meilleure idée, cependant, serait de modifier le fichier vmoptions de votre utilisateur. Copiez simplement C:\Program Files (x86)\JetBrains\PhpStorm 8\bin\PhpStorm64.exe.vmoptions dans %USERPROFILE%\.IntelliJIdea12\idea.vmoptions Et définissez -Xmx750m Sur une valeur plus élevée.

11
Denis V

Simplement File> Invalidates Caches / Restart... travaille pour moi. ????????

4
Glenn Mohammad

J'ai trouvé un fichier journal dans l'application qui est passé de quelques Ko à plus de 2 Go pendant quelques secondes en raison d'un bogue. Webstorm essayait d'indexer ce fichier journal de 2 Go et manquait de mémoire. La suppression du fichier journal a résolu le problème (puis la résolution du problème a empêché la croissance du fichier journal).

Avant cela, j’essayais également d’exécuter le JDK x64 et de passer de XMX à 2048. Mais à la fin, un environnement 64 bits avec 2048 Mo n’était pas suffisant (même si 512 Mo étaient toujours suffisants auparavant).

1
steampowered