2012-06-18 33 views
10

Estoy desarrollando una aplicación con GWT y GAE. Cuando trato de reconstruirlo o crear un artefacto, recibo muchos errores que se muestran a continuación en la imagen.Excepción en el hilo "principal" java.lang.OutOfMemoryError: Límite de sobrecarga del GC excedido en la aplicación GWT

He buscado en Google y Stack Overflow y obtuve algunas respuestas, pero no a mi problema en particular.

Por lo que entiendo, me sale el error porque mi recolector de basura consume mucha memoria.

enter image description here

aquí es el error principal Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded.

+2

Es más fácil para nosotros si registra los mensajes de error en un bloque de código, si es posible – Craigy

+0

pensé que será mejor si i muestra toda la imagen. pero intentaré pasar el error. – Adelin

+0

lo siento, pero parece que tengo que copiar y pegar cada línea por separado, así que si puedes intentar obtener los errores te lo agradeceré. – Adelin

Respuesta

14

Bien, solucioné el problema. simplemente aumente la memoria que la máquina virtual necesita para compilar el proyecto. Anteriormente era 128 y ahora lo cambio sea 512. a medida que crecía mi proyecto necesitaba más memoria para compilar las clases del proyecto. Aquí está cómo hacerlo en Injtellj IDEA. haga clic derecho sobre el proyecto módulo -> Ajustes de módulo abiertas -> Módulos -> GWT -> compilador tamaño máximo de almacenamiento dinámico (Mb) -> cambiaron a 512.

enter image description here

NOTA: En Ideal Intellij 12 + la configuración del proyecto está en: archivo -> Estructura del proyecto o Ctrl + ALRT + Shitf + S

+2

+1 ¡Impresionante, gracias!Aparentemente estaba configurando otra (y incorrecta) propiedad de "límite de compilación" ... –

+0

, pero ¿dónde se puede ver esta opción en eclipse juno en Linux? Me encontré con este mismo error pero no puedo cambiar mi propiedad de límite – lulu

+0

checkout chopu answer! – Adelin

2

respuesta de Adio es correcto, excepto que tenía que cambiarlo 1000Mb cuando añadimos la biblioteca "GWT-móviles" - 512 Mb todavía me daban el error de "límite superior de GC". Creo que 128Mb es un valor predeterminado bastante pobre, eso no funcionó para nosotros, incluso cuando comenzamos a escribir nuestra aplicación.

4

que había encontrado el mismo problema

Exception in thread “main” java.lang.OutOfMemoryError: GC overhead limit exceeded 

y cuando traté de corregir este error se mostró el mismo error. Así que no cunda el pánico y simplemente aumentar el tamaño un poco más al establecer esta opción en Run-> Ejecutar Configuraciones-> Haga clic en arguments-> dentro argumentos de VM tipo

-Xms1024M -Xmx2048M 

Xms- para el límite mínimo

-Xmx - para el límite máximo

0

He intentado todas las sugerencias en una serie de mensajes en la red y ninguno de ellos funcionó. Después de mucho experimentar, al final encontré que usar el recolector de basura G1GC en OSX hizo una gran diferencia para mí. Si está utilizando ANT, debe asegurarse de que el archivo de compilación inicie el compilador con el recolector de basura G1GC

1

No funcionó cambiar la configuración a través de las propiedades del proyecto en netbeans.

Mi solución fue editar el nbproject/gwt.properties con:

# Additional JVM arguments for the GWT compiler 
gwt.compiler.jvmargs=-Xmx1024M 
+0

Es bueno saber, pero en aquel entonces usé IDEA Intellij :) – Adelin

Cuestiones relacionadas