2011-01-17 9 views
5

Me sale un error cada vez que intento crear un proyecto pequeño (nuestro sdk). Configuré mis MAVEN_OPTS a -Xms1024m -Xmx1536m y tengo un intercambio de 6-12 GB en mis dos discos duros (por lo que tengo un total de 24 GB). Tengo 6 GB de ram físico en mi caja de los cuales 4 GB están asignados ... ¡así que realmente no creo que deba recibir este error! Cuando construyo mi proyecto principal obtengo un OutOfMemoryError también, pero cuando lo construyo de nuevo, completa la compilación. Este proyecto no se completará ¿Alguna ayuda?Maven build OutOfMemoryError Chunck :: new

OS Info:

Apache Maven 2.2.1 (r801777; 2009-08-06 13:16:01-0600) 
Java version: 1.6.0_22 
Java home: C:\PROGRA~2\Java\jdk1.6.0_22\jre 
Default locale: en_US, platform encoding: Cp1252 
OS name: "windows 7" version: "6.1" arch: "x86" Family: "windows" 

Seguimiento de la pila:

c:\dev\fi\fbisdk>mvn -e 
+ Error stacktraces are turned on. 
... 
[INFO] ------------------------------------------------------------------------ 
[ERROR] BUILD ERROR 
[INFO] ------------------------------------------------------------------------ 
[INFO] An Ant BuildException has occured: java.lang.OutOfMemoryError 

[INFO] ------------------------------------------------------------------------ 
[INFO] Trace 
org.apache.maven.lifecycle.LifecycleExecutionException: An Ant BuildException has occured: java.lang.OutOfMemoryError 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:719) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328) 
     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138) 
     at org.apache.maven.cli.MavenCli.main(MavenCli.java:362) 
     at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
     at java.lang.reflect.Method.invoke(Method.java:597) 
     at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) 
     at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) 
     at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) 
     at org.codehaus.classworlds.Launcher.main(Launcher.java:375) 
Caused by: org.apache.maven.plugin.MojoExecutionException: An Ant BuildException has occured: java.lang.OutOfMemoryError 
     at org.apache.maven.plugin.antrun.AbstractAntMojo.executeTasks(AbstractAntMojo.java:131) 
     at org.apache.maven.plugin.antrun.AntRunMojo.execute(AntRunMojo.java:98) 
     at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694) 
     ... 17 more 
Caused by: java.lang.OutOfMemoryError 
     at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:116) 
     at org.apache.tools.ant.Task.perform(Task.java:348) 
     at org.apache.tools.ant.Target.execute(Target.java:357) 
     at org.apache.maven.plugin.antrun.AbstractAntMojo.executeTasks(AbstractAntMojo.java:118) 
     ... 20 more 
Caused by: java.lang.OutOfMemoryError 
     at java.util.zip.Inflater.init(Native Method) 
     at java.util.zip.Inflater.<init>(Inflater.java:83) 
     at org.apache.tools.zip.ZipFile.getInputStream(ZipFile.java:236) 
     at org.apache.tools.ant.taskdefs.Zip.addResources(Zip.java:804) 
     at org.apache.tools.ant.taskdefs.Zip.addResources(Zip.java:853) 
     at org.apache.tools.ant.taskdefs.Zip.executeMain(Zip.java:499) 
     at org.apache.tools.ant.taskdefs.Zip.execute(Zip.java:414) 
     at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
     at java.lang.reflect.Method.invoke(Method.java:597) 
     at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
     ... 23 more 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 5 seconds 
# 
# A fatal error has been detected by the Java Runtime Environment: 
# 
# java.lang.OutOfMemoryError: requested 38168 bytes for Chunk::new. Out of swap space? 
# 
# Internal Error (allocation.cpp:215), pid=6384, tid=600 
# Error: Chunk::new 
# 
# JRE version: 6.0_22-b04 
# Java VM: Java HotSpot(TM) Client VM (17.1-b03 mixed mode windows-x86) 
# An error report file with more information is saved as: 
# c:\dev\fi\fbisdk\hs_err_pid6384.log 
# 
# If you would like to submit a bug report, please visit: 
# http://java.sun.com/webapps/bugreport/crash.jsp 
# The crash happened outside the Java Virtual Machine in native code. 
# See problematic frame for where to report the bug. 
+0

puede publica las partes de su pom.xml que tienen que ver con llamar a antrun y crear archivos zip? –

+0

Java necesita memoria continua y en un sistema de 32 bits esto puede ser difícil de obtener cuando intenta obtener más de 1.3 GB. Te sugiero que pruebes Java de 64 bits (en un sistema operativo de 64 bits) y no deberías ver este problema. –

Respuesta

1

No sé si es la raíz de su problema, pero -Xmx establece max de memoria. Establecerlo más alto. Si está configurado demasiado bajo, puede obtener excepciones de OutOfMemory. Y mantenga Xms pequeño, ya que puede agravar el problema.

Además, echar un vistazo a los consejos, puede resultar útil:

http://rimuhosting.com/knowledgebase/linux/java/-Xmx-settings

+0

Gracias. De hecho, eliminé la memoria máxima y acabo de dejar el min. Solucionó el problema en el proyecto paralelo, pero aún tengo el problema cuando hago una compilación limpia en el proyecto principal la * primera * vez. En el segundo intento de construir, funciona. – hazmat

0

Debe depurarlo con la opción -X, esto debería darle más información.

0

Usted parece ser la ejecución de una acumulación de hormigas de su acumulación experto. Si la compilación de hormigas se bifurca, no tiene en cuenta tus MAVEN_OPTS. Debería poder pasar configuraciones de memoria similares a la compilación ant para proporcionar memoria adicional.

0

Java necesita memoria continua y en un sistema de 32 bits esto puede ser difícil de obtener cuando intenta obtener más de 1.3 GB y ya tiene muchos programas en ejecución. Le sugiero que pruebe

  • corriendo experto antes de ejecutar cualquier otra cosa cuando la memoria es sobre todo libre,
  • en Java de 64 bits (en un sistema operativo de 64 bits) y que no tenga que ver este problema.
Cuestiones relacionadas