「mvn install」でオープンソースプロジェクトをコンパイルしていますが、java.lang.OutOfMemoryError: Java heap space
. 実行しようとしましjava -Xmx256m
たが、無効なコマンドであることを示す java synopsis が出力されました。
を使用してjdk1.5.0_08
いますが、なぜこれが起こっているのでしょうか?
ありがとう、
「mvn install」でオープンソースプロジェクトをコンパイルしていますが、java.lang.OutOfMemoryError: Java heap space
. 実行しようとしましjava -Xmx256m
たが、無効なコマンドであることを示す java synopsis が出力されました。
を使用して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"
私はいつもubuntuのシェルでこれを使用しています:
export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=500m"
set MAVEN_OPTS="-XX:MaxPermSize=256m"
または、コマンド プロンプトから実行中に使用します。
Maven インストールを変更または更新してみてください。私はこの問題を抱えていましたが、Maven (3.0.5 から 3.3.3) をアップグレードすることで解決しました。
私は同じ問題を経験しました。このリンクによると、 jvm の実装を変更すると役立つ場合があります。これは、JAVA_HOME システム変数を設定することで実行できます。
たとえば、ibm jvm または oracle jrockit に言及されているリンクを試してください。
SET JAVA_HOME=C:\bea10\jrockit160_22
mvn install