Java で作成したプログラムを Eclipse で実行しています。プログラムには、非常に大きな入力に対して非常に深いレベルの再帰があります。小さい入力の場合、プログラムは正常に実行されますが、大きな入力が与えられると、次のエラーが発生します。
Exception in thread "main" java.lang.StackOverflowError
Javaスタックサイズを増やすことでこれを解決できますか?もしそうなら、Eclipseでこれを行うにはどうすればよいですか?
アップデート:
@ジョン・スキート
コードは、データ構造を構築するために解析ツリーを再帰的にトラバースしています。したがって、たとえば、コードは解析ツリー内のノードを使用していくつかの作業を行い、ノードの 2 つの子でそれ自体を呼び出し、それらの結果を組み合わせてツリーの全体的な結果を提供します。
再帰の合計の深さは解析ツリーのサイズによって異なりますが、再帰呼び出しの数が 1000 に達すると、コードは (より大きなスタックなしで) 失敗するように見えます。
また、小さな入力でも機能するため、バグが原因でコードが失敗することはないと確信しています。