处理大文件时,IntelliJ非常慢

时间:2014-11-20 04:52:11

标签: java intellij-idea intellij-plugin guidewire

我使用的是Guidewire开发工作室(基于IntelliJ的IDE),当处理大文本文件(~1500行及以上)时,它非常慢。我尝试了一个开箱即用的社区IntelliJ,但遇到了同样的问题。

当我打开这些文件时,键入一个字符需要1秒,即使我清楚地看到所用的内存仍然很多(1441 MB / 3959 MB)。此外,如果我打开多个文件(我只为IntelliJ分配4GB),它会迅速吸收所有内存。智能感知和其他自动内容也非常缓慢。

我喜欢IntelliJ,但在这种情况下工作真的很难。有没有办法解决这个问题?我想到了一些替代方案,比如:

  1. 在另一个编辑器上编辑大文件(例如:Notepad ++),然后在IntelliJ
  2. 上重新加载
  3. 打开另一个小文件,在那里复制你的代码,编辑它,然后将其复制回来。这会有所帮助,因为智能感知和代码突出显示得以维持,但这很麻烦
  4. 我确实关闭了所有不必要的插件,只留下了必要的插件,但没有任何改进。

    我也想知道我是否可以"嵌入" IntelliJ中的一些外部编辑器?像Notepad ++,Notepad2例如?我完成了我的家庭作业和谷歌,但没有找到允许这样做的插件/配置。

    有没有经验丰富的人可以给我一些建议如何使用IntelliJ中的大文件(不要生气)?

    更新:通过我的研究,我了解到IntelliJ可以打破非常大的文件(如20mb)等等。但我的档案并不大。它只有大约100KB - 1MB,但它的文本非常长。

    UPDATE 2 尝试增加堆内存后,Sajidkhan建议(我改变了idea64.vmoptionsidea.vmoptions),我意识到IntelliJ不知道怎么做更改。内存堆最大停留在3GB。

    另一方面,当系统仅使用约1GB的堆内存时,可以感知到性能缓慢,因此我认为问题与内存问题无关。

3 个答案:

答案 0 :(得分:7)

经过一段时间在丛林中工作,我找到了一种解决方法,有点像。

当我从类似的问题中检查其他答案时,我发现当文件大小至少为几MB时,它们会开始出现问题。它没有意义,因为当文件只有几KB时我遇到了麻烦。经过更仔细的检查,我发现Gosu插件是罪魁祸首:在我将我的Gosu文件标记为"仅文本"后,速度变得正常。

所以我猜这个问题与代码荧光笔有关。语法提醒。目前,我解决这个问题的最佳方法是:

  1. 右键单击该文件并将其标记为纯文本。
  2. 关闭文件并再次打开,然后进行编辑。
  3. 注意:由于它适用于Guidewire开发套装中的所有文件类型,您可能希望将一些长文件永久标记为纯文本,尤其是* .properties(aka,i18n / international文件)。代码自动完成程序的好处并不值得。

答案 1 :(得分:4)

您可以尝试在bin文件夹中编辑idea64.vmoptions。您可以将最大堆和最大PermGen设置为更高的值

别忘了重启!

答案 2 :(得分:2)

在不同的PC上测试过。即使在快速处理器上,编辑器在处理大型文件(2000多行代码)时也会非常缓慢。

Eclipse,Netbeans绝对没问题。调整.vmoptions无济于事。

此错误仍未修复:https://intellij-support.jetbrains.com/hc/en-us/community/posts/206999515-PhpStorm-extremely-slow-on-large-source-files

更新。尝试使用默认设置的32位版本。通常32位的想法工作得更快,占用的内存更少。