PHPStorm/Webstorm将内存增加到512MB以上

Ron*_*Ron 50 jvm out-of-memory windows-7-x64 phpstorm webstorm

我使用的是PHPStormWin7 64bit64bit Java (latest version I guess)目前的出奇的大,混乱的项目.有许多类包含10k LOC更多.因此我PHPStorm偶尔会耗尽内存.

我得到了这个很好的Out-of-Memory对话框,建议增加我的内存设置.我目前设置在我的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
Run Code Online (Sandbox Code Playgroud)

问题是:当我增加内存以便在此文件中使用时,启动程序时出现以下错误:

无法创建JVM:错误代码-4

我Google左右,但似乎没有人想要的内存要512MB.

有没有人知道我能做什么才能再次使用PHPStorm而不用麻烦?

当然,我可以重置缓存,但这不是一个永久的解决方案,对吧?

我在某处读到了将这一行添加到我vmoptions的想法是个好主意,但我没有看到任何区别:

-server
....
-XX:MinHeapFreeRatio=15
Run Code Online (Sandbox Code Playgroud)

Ern*_*ius 91

更改PHPStorm的内存设置现在有一个菜单选项:在此输入图像描述

  • 我知道,但是,也许有人只需要改变记忆,因为SO已经像devs wiki了. (4认同)

Laz*_*One 44

确保PhpStorm使用64位Java而不是捆绑的(32位).你检查一下Help | About.

一般来说:64位Java中,你不必改变价值,因为它的工作原理有点不同相比,32位之一.

1) PhpStorm捆绑了x86 Java,它是第一个尝试的; 只有这样它才能查找其他Java安装 - 检查PhpStorm.bat详细信息(环境变量和顺序).通过定义其中一个环境变量(指向您的64位Java安装),您可以告诉PhpStorm使用而不是捆绑的.

2) PhpStorm v8(目前处于EAP阶段)附带64位特定文件:您应该使用PhpStorm64.exe和不使用PhpStorm.exe(.vmoptions文件相同- 它应该是PhpStorm64.exe.vmoptions).

我不确定PhpStorm v7如何与64位Java一起工作 - 我从未尝试过这种方式.


选择IDE将在其下运行的JDK版本

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

  • https://intellij-support.jetbrains.com/entries/23455956-Selecting-the-JDK-version-the-IDE-will-run-under - 也许你提供了**错误的路径**? (2认同)

Fre*_*ing 30

阅读这篇文章后,我切换到64位版本(安装正确的JDK后)并将指定的内存增加到2GB只是为了关闭它.但我仍然达到了上限,冻结等等.

最终意识到,我bower_components跟踪了我的文件夹.这样的文件夹有大量的javascript-files等.基本上会吃掉世上所有的公羊(我node_modules现在也排除文件夹,同样的故事).所以我右键单击文件夹>标记目录为> Exluded.经过一些垃圾收集,PhpStorm的内存占用率降至5-600mb,这似乎是合理的.

  • 疯狂的内存/ CPU使用已经让我好几个星期.这马上修好了.谢谢! (2认同)

Den*_*s V 11

PhpStorm 2016.1及更新版本

从PhpStorm 2016.1开始,WEBIDE_JDK_64应该使用JAVA_HOME应该指向您的JVM路径的环境变量.

PhpStorm 2016.1之前的版本

就像在@ LazyOne的回答中提到的那样,从PhpStorm v8(已经发布)开始,你可以使用PhpStorm64.exe.但我无法找到有关如何为其指定JVM路径的任何说明.解释如何选择JDK版本的文档似乎有点过时了.

经过一些研究,我发现你应该创建WEBIDE_JDK_64应该指向JRE 64位安装路径的环境变量.完成此操作后,您将能够启动PhpStorm64.exe.

默认情况下,它将最大内存设置为750mb.如果您需要更多,可以修改C:\Program Files (x86)\JetBrains\PhpStorm 8\bin\PhpStorm64.exe.vmoptions.但是,更好的想法是编辑用户的vmoptions文件.只需复制C:\Program Files (x86)\JetBrains\PhpStorm 8\bin\PhpStorm64.exe.vmoptions%USERPROFILE%\.IntelliJIdea12\idea.vmoptions并设置-Xmx750m为更高的值.


Gle*_*mad 6

简单地File>Invalidates Caches / Restart...对我有用。