2011-06-17 11 views
23

cómo aumentar el tamaño de la hormiga permgen? Me he dado en ANT_OPTS comocómo aumentar el tamaño de la hormiga permgen?

-Xms768m -Xmx1024m -XX: PermSize = 128m -XX: MaxPermSize = 128m

pregunta 1) Después de especificar la configuración anterior en el entorno del sistema, todavía soy saliendo del error de memeory para el objetivo de la hormiga para junit.

Caught an exception while logging the end of the build. Exception was: 
java.lang.OutOfMemoryError: PermGen space 

2) cuando i tipo en promt comando para ver lo que hay camino para ant_opts, echo% ant_opts% sólo

-Xmx512m

y otras partes muestra salta. hay algo mal en mi camino? Nota: estoy usando el símbolo del sistema para ejecutar el objetivo ant.

+0

Comprueba que no tienes otra variable (como 'JAVA_OPTS') anulándola. – Mikaveli

+0

¿Lo está ejecutando a través de algún tipo de contenedor? Quizás no está pasando los valores. –

+0

no, no tengo ningún otro OPT. Estoy ejecutando una prueba de integración que lleva más tiempo ejecutar casos de prueba.utilizando el símbolo del sistema para ejecutar el objetivo ant para el informe junit. – TechFind

Respuesta

25

ir a Mi PC> haga click-> propiedades-> Avanzado-> entorno variables-> Nuevo (en el sistema/variable de usuario) ->

entrar

Varible name: ANT_OPTS 
Varible Value : -Xms1536m -Xmx1536m -XX:PermSize=1024m -XX:MaxPermSize=2048m 

Nota:

  1. valores de configure de acuerdo a su tamaño de la memoria del sistema.

  2. Este Config para Windows, por otra configuración OS consecuencia

Para MAC:

en la Terminal, ruta pom.xml Goto en el proyecto, dirigido por debajo de comando:

MAVEN_OPTS exportación = "- Xmx1024m -XX: MaxPermSize = 512m" Nota: El tamaño se basa en la RAM del sistema. Usé maven en lugar de Old Ant. use MAVEN_OPTS/ANT_OPTS para la configuración maven/ant.

+3

Como era de esperar, eso no funciona en mi computadora: ¡una Mac con sistema operativo X! – gutch

+0

en el mío tampoco (ubuntu 12.04) – mondjunge

+0

¿Deberían las instrucciones de mac ser 'ANT_OPTS' no' MAVEN_OPTS'? – pgreen2

3

¿Qué hace su prueba? ¿Llama a un método recursivo?

Además, los valores que ingrese para su prueba anularán cualquier configuración del sistema. Pruebe esto en su llamada a Junit en el script Ant:

<junit fork="yes" maxmemory="1024"> 
+1

¿Cuál es el valor predeterminado si no proporciona 'maxmemory'? – Blundell

+0

¡Gran respuesta!Descubrí que estaba obteniendo un error de falta de memoria porque nuestro '' había sido cambiado. De forma predeterminada, es 'perTest', pero si cambia a otra cosa (por ejemplo, 'once'), esto puede causar excepciones OutOfMemory ya que junit no inicia una nueva instancia de VM para cada prueba. –

1

para mi objetivo junit ant Acabo de configurar fork="true" de esa manera un nuevo jvm se iniciará para las tareas junit, también hay forkmode="perBatch" o "perTest", funcionó para mí!

Cuestiones relacionadas