如何在Java中重现EXCEPTION_STACK_OVERFLOW错误

时间:2011-07-08 11:09:52

标签: java crash jvm stack-overflow crash-dumps

如何在Java中重现EXCEPTION_STACK_OVERFLOW错误。

PS:我不是在谈论优雅地关闭JVM的Java中的StackOverflowError错误。我在讨论error.log中的EXCEPTION_STACK_OVERFLOW,这会导致JVM崩溃。

3 个答案:

答案 0 :(得分:7)

到目前为止,我发现的大多数EXCEPTION_STACK_OVERFLOW错误都发生在JVM之外的本机代码中。 JVM中的崩溃值得一个错误报告并将被修复。或者您是否需要(未知)漏洞利用?

因此,最简单,最可靠的方法是使用一些代码编写本机库,这些代码会导致JVM崩溃并使用JNI调用它。

(一般的答案,我实际上不知道该怎么做。只能用java代码完成;)

答案 1 :(得分:3)

Blow stack:

public static void main(String[] args) {
    main(null);
}

Blow heap:

public static void main(String[] args) {
    List<String> list = new ArrayList<String>();
    while(true) list.add(new String("boom"));
}

答案 2 :(得分:3)

public static void stackoverflow()
{
     stackoverflow();
}

打电话,享受:D