如何诊断日食崩溃?

Posted

技术标签:

【中文标题】如何诊断日食崩溃?【英文标题】:How to diagnose eclipse crashes? 【发布时间】:2010-11-14 15:03:55 【问题描述】:

天哪,eclipse(它是 Gallileo,但在以前的版本中我也遇到过这样的问题)再次崩溃,一如既往地无声无息。这可能每周发生一次,但这真的很烦人。我现在只有一个崩溃日志。有什么方法可以找出这些崩溃的真正原因吗?

崩溃日志的标题,看不到任何有用的东西:

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d80f8d4, pid=1388, tid=3180
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_12-b04 mixed mode)
# Problematic frame:
# V  [jvm.dll+0xcf8d4]
#

【问题讨论】:

您是否尝试过从命令行提示符启动 Eclipse?我通常会获得崩溃发生位置的完整堆栈跟踪,然后是您在上面发布的崩溃日志的标题。 【参考方案1】:

我曾经在 64 位 Linux 上遇到过这种无声的崩溃。对我来说,将这些行添加到我的 eclipse.ini 后就好了(请参阅相应的 Eclipse 和 Sun 错误条目):

-XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith
-XX:CompileCommand=exclude,org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding,<init>

【讨论】:

这让我进一步了解了运行 64 位 1.5_22 的启动过程。它仍然崩溃,但不太频繁,而且在启动时也不正确。我认为这与 eclipse 启动时所经历的构建过程有关。 认为将它添加到 eclipse.ini 使它在我的 64 位 Ubuntu 14.04 上更加稳定。我正在使用“adt-bundle-linux-x86_64-20140321”android 开发包,它开箱即用非常不稳定(在正常开发过程中崩溃,如果你不走运,可能每小时 2-3 次。没有堆栈跟踪,eclipse 只是退出) .【参考方案2】:

对于 Galileo,我建议尝试使用最新的 JVM 启动它;

这并不意味着您必须使用该 JDK 编译您的项目:您可以在 Eclipse 会话中声明任意数量的 JDK。

(来源:benmccann.com)

(虽然这张图显示的是jdk1.5,但是你可以用任何其他JVM启动eclipse)

查看eclipse.ini了解更多详情。


作为最近的thread illustrates,“旧”eclipse.ini 可能会发生这种情况,因此值得检查和更新 ini 文件。

【讨论】:

【参考方案3】:

这是 Eclipse 触发的 Sun 的 Java VM 中的一个错误。众所周知,这些都很难弄清楚。我建议这种方法:

    安装较新的 VM(1.5.0 16 或 1.6) 禁用您已安装的所有插件 我在 Linux 上遇到了与 Groovy 类似的问题。我不记得我的解决方案了,但在这种情况下尝试使用不同版本的 Groovy。

【讨论】:

以上是关于如何诊断日食崩溃?的主要内容,如果未能解决你的问题,请参考以下文章

如何在“找不到文件”错误后增加 VBA 错误输出以诊断一致崩溃

如何编写 ADPlus 脚本以方便客户用于诊断崩溃和挂起

如何诊断和解决 WCSession sendMessage(_:replyHandler:errorHandler:) 上的崩溃?

Qt Creator 在创建或打开 .ui 文件时崩溃。如何诊断?

如何诊断 iPad iPhone 应用程序中的 EXC_BREAKPOINT (SIGTRAP) 崩溃?

Intellij 诊断崩溃问题