-XSSRun Configurations,找到你运行的配置,修改VM Options

解决方案 »

  1.   

    Eclipse里,Run --> Run Configurations --> Arguments
    然后在VM arguments里写上-Xss1M
    当然-Xss后面的大小你自己指定,最后记得按下面的Apply保存设置不过一般造成栈溢出你首先应该检查的是,递归是否是无限递归,是否有可控的深度,而不是立马就去调栈大小。
    而且可以很轻易转换为循环的递归,比如尾递归,应该首选循环,递归需要额外的空间,而且函数调用也损失性能。
      

  2.   

    java中默认栈的深度为1000~2000次,对于一般的程序,这个深度都够用了。
    如果程序需要再深的深度,就会StackOverflowError
    还是推荐楼上们的说法,检查自己代码,优化代码,优化方案。
      

  3.   

    深入理解java虚拟机中说到这段
    可以写一个for循环去递归,递归1000次,递归2000次,递归更深,直到抛StackOverflowError