2

推奨されるヒープ サイズでも、Apache Sling の Maven ビルドを実行すると、次のエラーが発生します。

main:
     [echo] **************** WARNING (SLING-443/SLING-1782) ******************************
     [echo] On most platforms, you'll get OutOfMemoryErrors when building unless you set
     [echo] on 32bit platforms: MAVEN_OPTS="-Xmx256M -XX:MaxPermSize=256M", see SLING-443
     [echo] on 64bit platforms: MAVEN_OPTS="-Xmx512M -XX:MaxPermSize=512M", see SLING-1782
     [echo] ******************************************************************************
[INFO] Executed tasks
[INFO] 
[INFO] --- maven-resources-plugin:2.4.3:testResources (default-testResources) @ sling-launchpad-webapp-archetype ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/thomasf/slingDownload/sling/maven/archetypes/launchpad-webapp/src/test/resources
[INFO] Copying 3 resources
[INFO] 
[INFO] --- animal-sniffer-maven-plugin:1.7:check (default) @ sling-launchpad-webapp-archetype ---
[INFO] Checking unresolved references to org.codehaus.mojo.signature:java15:1.0
[ERROR] Java heap space -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/OutOfMemoryError

確かに、私のヒープサイズは、プロジェクトのホームページで推奨されているものと同じです:

echo $MAVEN_OPTS
-Xmx512M -XX:MaxPermSize=512m

原因は maven が fork しており、子プロセスの jvm が同じヒープ サイズを持っていないことだと思われますが、コンソール出力からどのプラグインが fork しているかを特定できません。

どんなアイデアでも大歓迎です!!! ありがとう

4

3 に答える 3

0

MAVEN_OPTS変数が宣言されているかどうかにかかわらず、コンピューターの環境変数をチェックインできます。そうでない場合は次のように宣言します

MAVEN_OPTS=-Xmx1024M -XX:MaxPermSize=512m

それ以外の場合は、既に宣言されている場合は、メモリサイズを増やしてください。

このようにして、私にとってはうまくいきました。

于 2013-11-25T12:53:07.940 に答える
0

JAVA_OPTS環境変数を使ってもメモリが足りない?これは実行中のすべての vm に影響するため、新しく生成されたプロセスにもこれらの設定が必要です。

または、1200M のメモリを使用してみてください。64ビットJVMを実行している場合は、ヒープメモリがあまり不足していないかもしれません...興味深い質問です。

-X を使用してビルドを実行し、ヒープ エラーの前に実行されるプラグイン/ゴールかもしれません。うまくいけば、そのプラグインを構成できます。

于 2011-12-08T13:22:04.870 に答える
0

メモリを増やすだけで試すことができます:

MAVEN_OPTS=-Xmx1024M -XX:MaxPermSize=512m

または JAVA_OPTS を使用して設定します (ただし、これは実行中のユーザーの JVM プロセスに影響します!) 子プロセスにもこれらの設定が含まれます。

JAVA_OPTS=-Xmx512M -XX:MaxPermSize=512m

最初に MAVEN_OPTS でメモリを増やしてみてください。

よろしく

ヴェルナー

于 2011-11-15T17:33:46.463 に答える