2011-05-18 134 views
8

有时Intellij IDEA崩溃没有明显的原因。Intellij诊断崩溃问题

首先,它变得非常慢,CTRL + N(类搜索)通常需要比平时更长的时间来响应,当你输入一些东西时,在文件间跳转需要更多时间。然后它崩溃..

什么是通常诊断Intellij崩溃的路线?当它崩溃时,我一直在监视状态栏上的内存,并且当时还剩下大约100MB(512MB)。有什么有用的日志可以指出问题的方向吗?

[更新]共3次崩溃。

1实例:

A fatal error has been detected by the Java Runtime Environment: EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d93acab, pid=3120, tid=5588 JRE version: 6.0_24-b07 Java VM: Java HotSpot(TM) Client VM (19.1-b02 mixed mode windows-x86) Problematic frame: V [jvm.dll+0x9acab]

2实例:

A fatal error has been detected by the Java Runtime Environment: java.lang.OutOfMemoryError: requested 32756 bytes for ChunkPool::allocate. Out of swap space? Internal Error (allocation.cpp:166), pid=2484, tid=5568 Error: ChunkPool::allocate

存储器配置: -Xss2m
-Xms32m
-Xmx512m

增加了存储器到-Xmx768,希望这会延迟内存不足的错误一点点。在运行IDEA一段时间(整数溢出?)后,将内存增加到-Xmx1024会导致奇怪的地址映射问题。该机器有3GB的RAM。

+2

日志文件的位置是依赖于系统的,但它会像〜UserHomeDir/.IdeaXXX/system/log。也许如果你更新你的问题与相关部分有人会有机会回答它。 – 2011-05-18 16:22:58

+0

我可以在那里看到很多内存异常,有20MB的日志。我不能确切地说它崩溃时的最后一个异常,会尝试增加jvm内存,并且如果再发生这种情况,请查看最后几个日志。谢谢。 – Leonid 2011-05-18 16:30:39

回答

8

请定义“崩溃”。如果该窗口消失,则通常意味着JVM错误,并且IDEA工作目录(通常是IDEA_HOME/bin)中将存在hs_err_pidXXX.log文件中的。在某些情况下,将JDK更新到新版本或更改垃圾收集器策略(通过vmoptions文件)可以解决此类问题。

如果IDE完全停止响应,则需要provide thread dumps

如果表现奇怪,那么您需要检查idea.log的例外情况。在某些情况下,它可能是由OutOfMemory问题引起的。在idea.vmoptions中增加堆大小应该有所帮助。 Check the FAQ用于IDEA文件位置。

如果IDEA在某些操作上变得非常慢,您需要provide CPU snapshot

+1

感谢您的答案,这有助于查找崩溃的日志。其他细节也很有帮助。在我的情况下,窗户消失了。我已经用更多的细节更新了答案,并且似乎在3个实例中有2个错误是由内存问题引起的。 – Leonid 2011-05-18 21:05:29

+1

此类问题可能由内存碎片引起。 768m应该是安全值,但在32位JVM下运行时可能会导致问题。 – CrazyCoder 2011-05-19 04:23:44

10

Intellij不会启动,即闪烁IntelliJ并崩溃。

修复: -Xmx设置为默认512MB在位于夹C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 14.1.4\bin

如何降落在这个问题上idea.exe.vmoptions文件:我有XMX设置为2048MB早些时候坠毁撞击GC限制。然后在IntelliJ不会启动。

+0

有没有办法超过这个限制而不会崩溃?我在修改内存分配后遇到了同样的问题。 – Creperum 2015-11-18 12:32:19

+0

是的,这是我的情况的问题。 – Daniel 2015-12-02 12:17:31

+2

这真的是违反直觉。你是说如果我的内存不足,我应该减少分配给JVM的内存? – 2016-09-16 22:32:34