运行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在派生,而子进程中的jvm没有相同的堆大小--然而,我无法从控制台输出中识别出哪个插件是派生的。
任何想法都很感谢!谢谢
发布于 2011-11-16 01:33:46
您可以尝试只增加内存:
MAVEN_OPTS=-Xmx1024M -XX:MaxPermSize=512m或者使用JAVA_OPTS设置它(但这会影响执行用户的任何JVM进程!)因此,子进程也将具有以下设置:
JAVA_OPTS=-Xmx512M -XX:MaxPermSize=512m尝试先使用MAVEN_OPTS增加内存。
问候
沃纳
发布于 2011-12-08 21:22:05
即使使用JAVA_OPTS环境变量,也没有足够的内存吗?由于这会影响任何正在运行的vm,因此新派生的进程也应该具有这些设置。
或者尝试使用1200M的内存?也许没有太多堆内存缺失,如果你运行64位JVM,你可能只需要更多...这个问题很有趣。
我将使用-X运行构建,也许它是在堆错误之前执行的插件/目标。希望这个插件可以配置好。
发布于 2013-11-25 20:53:08
无论是否声明了MAVEN_OPTS变量,您都可以签入计算机的环境变量。如果不是,则将其声明为
MAVEN_OPTS=-Xmx1024M -XX:MaxPermSize=512m否则,如果已经声明了,只需增加内存大小即可。
这对我来说很管用。
https://stackoverflow.com/questions/8124434
复制相似问题