3

を使用して play2.1 scala プロジェクトをコンパイルするeclipseと、次のようなエラーが発生しました。

[エラー] コンパイル中にキャッチされない例外:java.lang.StackOverflowError

[エラー] (コンパイル:コンパイル)java.lang.StackOverflowError

application.conf次の行を追加して、コンパイラを構成しようとしました。

jvm.memory=-Xmx5g -Xms5g -Xss8192M

(私のプログラムも多くのヒープ領域を必要とするので、xmx と xms も追加しました)

しかし、それは動作しません..

どうすれば問題を解決できますか?

4

4 に答える 4

2

あなたの例外はおそらくコンパイラのバグによるものであり、スタックサイズが不十分ではありません。

于 2013-04-04T07:27:46.933 に答える
1
[error] uncaught exception during compilation:java.lang.StackOverflowError

[error] (compile:compile)java.lang.StackOverflowError

それらは、コードのバグに起因するように見えます。そこに問題がないか再確認してください。通常の SBT の問題は またはjava.lang.OutOfMemoryError: PermGen spaceです。この場合、@Marius Danila の回答を使用して問題を解決してください。

最善の方法は、メソッドの単体テストを行うことです。Play はJUnit、またはそのSeleniumために使用します。ここを見て、単体テストでロジックを再確認してください。

于 2013-04-04T09:44:18.920 に答える
0

すべてを古いバージョンに戻すと、問題は解決しました。scala 2.9.1 または 2.9.2 はすべて正常に動作し、コンパイル時にスタック オーバーフローは発生しません。プレイバージョンは2.0.4です。

于 2013-04-04T17:13:39.943 に答える