「mvn install」でオープンソースプロジェクトをコンパイルしていますが、Java.lang.OutOfMemoryError: Java heap space
になりました。 Java -Xmx256m
を実行しようとしましたが、出力はJavaの概要であり、無効なコマンドであることを示していました。
jdk1.5.0_08
を使用していますが、これが起こっている理由はありますか?
ありがとう、
環境変数を設定します。
MAVEN_OPTS="-Xmx512m"
どのJVMインスタンスがより多くのメモリを必要とするかに依存します。例として、テストがフォークされ(デフォルトで)、OutOfMemoryErrorが原因で失敗した場合、テストを起動するプラグインを設定してみます。
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-Xmx1024m</argLine>
</configuration>
</plugin>
ヒープメモリだけではありません。環境変数でこれらの変数を使用するmavenの例外を解決するには、permサイズも増やす必要があります。
変数名:MAVEN_OPTS
変数値:-Xmx512m -XX:MaxPermSize = 256m
統合テストやSurefireなど、maven内で他のプログラムを使用する場合、MAVEN_OPTSでは不十分な場合があります。 MAVEN_OPTSとは別に、Java_TOOL_OPTIONSを使用してみてください。これは、いくつかの統合テストを実行するときにMavenで私のためのトリックを行いました:
export Java_TOOL_OPTIONS="-Xmx2048m -XX:MaxPermSize=1024m -Xms2048m"
または、set MAVEN_OPTS="-XX:MaxPermSize=256m"
コマンドプロンプトから実行中。
私は常にubuntuのシェルでこれを使用します:
export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=500m"