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

dluptydi  于 2022-11-23  发布在  PHP
关注(0)|答案(7)|浏览(501)

我正在Win7 64bit下使用x1m0 n1 a和64bit 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

问题是:当我增加内存以用于此文件时,启动程序时出现以下错误:
无法创建JVM:错误代码-4
我在谷歌上搜索了一下,但似乎没有人希望内存比512MB更大。

有人知道我可以做些什么来使用PHPSorm而不需要任何麻烦吗?

当然,我可以重置该高速缓存但这不是一个永久的解决方案,对吗?
我在某个地方读到,在我的vmoptions中添加这一行是个好主意,但我看不出有什么区别:

-server
....
-XX:MinHeapFreeRatio=15
bkhjykvo

bkhjykvo1#

更改PHPSorm的内存设置现在有一个菜单选项:

zfycwa2u

zfycwa2u2#

确保PhpStorm使用的是64位Java而不是捆绑的32位Java。
一般来说:使用64位Java,您不必更改该值,因为它工作方式与32位Java稍有不同。

**1)**PhpStorm附带了捆绑的x86 Java,它是第一个尝试的;然后它才查找其他Java安装--查看PhpStorm.bat以了解详细信息(哪些环境变量以及顺序)。通过定义其中一个环境变量(它将指向您的64位Java安装),您可以告诉PhpStorm使用而不是捆绑的环境变量。
2)PhpStormv8(目前处于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

50pmv0ei

50pmv0ei3#

阅读这篇文章后,我切换到64位版本(安装正确的JDK后),并增加指定内存到2GB只是为了关闭它。但我仍然击中天花板,冻结等。
最后我意识到,我有我的bower_components文件夹跟踪.像这样的文件夹与吨javascript文件等.基本上会吃掉世界上所有的内存(我也排除node_modules文件夹现在,同样的故事).所以我右键单击文件夹〉标记目录为〉排除.经过一些垃圾收集,颠簸PhpStorm的内存占用下降到5- 600 mb,这似乎是合理的.

n9vozmp4

n9vozmp44#

PhpStorm 2016.1及更新版本

从PhpStorm 2016.1开始,应该使用JAVA_HOME环境变量来代替WEBIDE_JDK_64,该变量应该指向JVM路径。

PhpStorm 2016.1之前的版本

就像在@LazyOne的回答中提到的那样,从PhpStorm v8(已经发布)开始,你可以使用PhpStorm64.exe。但是我找不到任何关于如何为它指定JVM路径的描述。解释如何选择JDK版本的文档似乎有点过时了。
经过一番研究,我发现您应该创建WEBIDE_JDK_64环境变量,该变量应该指向JRE 64位安装路径。完成此操作后,您将能够启动PhpStorm64.exe。
默认情况下,它将max memory设置为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设置为更高的值。

rseugnpd

rseugnpd5#

简单地FileInvalidates Caches / Restart...对我来说很有效。👌😀

mzaanser

mzaanser6#

Help -> Change Memory Settings -> Update Maximum Heap Size到所需的值。这为我修正了这个问题。

3npbholx

3npbholx7#

我在应用程序中发现了一个日志文件,由于一个错误,该文件在几秒钟内从几KB增长到超过2 GB。Webstorm试图索引此2 GB日志文件,但内存不足。删除日志文件解决了问题(然后修复错误,防止日志文件增长)。
在此之前,我还尝试运行x64 JDK并将XMX增加到2048。但最终,具有2048 MB的64位环境是不够的(尽管以前512 MB总是足够的)。

相关问题