代码之家  ›  专栏  ›  技术社区  ›  DaveH

JUnit Ant任务导致“堆栈大小太小”错误

  •  0
  • DaveH  · 技术社区  · 16 年前

    我的jUnit任务负责运行测试,大多数测试都可以正常工作,但是在JVM崩溃的情况下,我不断遇到间歇性故障,总是出现相同的错误:

    我使用ulimit将堆栈大小增加了一倍,崩溃仍在继续发生。JUnit任务运行大约100个不同的JUnit测试类,JVM崩溃可能发生在任何一个类中,所以我不认为这种行为是由于任何特定的测试造成的。

    ulimit-a告诉我堆栈的大小是32768kb(我已经把它增加了几次,直到现在),这对我来说是巨大的。

    运行sunjdk1.3

    任何人都有任何关于合理堆栈大小的线索或建议。

    戴夫

    2 回复  |  直到 16 年前
        1
  •  3
  •   TofuBeer    16 年前

    你是否添加了这样的内容:

    <jvmarg line="-Xss512k"/> 
    

    在ant脚本中,或者只是增加ant进程本身的堆栈(当然,假设您是forking测试,而不是在VM的ant实例中运行测试)。

        2
  •  0
  •   Woot4Moo    16 年前

    我对这件事的想法是,不知何故,事情并没有从内部堆栈弹出,我意识到这是显而易见的。因为你说它在整个测试过程中都是任意失败的,所以追踪起来有点困难。这些测试用例中有多少是递归的?还有多少叉子正在执行?