2011-07-20 13 views
7

He estado portando una base de código Flex 4 a iOS usando el empaquetador de adobe, pero me he encontrado con un problema al tratar de empacar todo el código base. El paquete se ejecuta por un tiempo y luego arroja un OutOfMemoryError, incluso si aumente el tamaño del almacenamiento dinámico de java a 4 GB.Adobe Flash iOS packager arroja java.lang.OutOfMemoryError al empacar proyectos grandes

Sin pieza de código parece estar causando el problema, ya que compila correctamente si recorto grandes trozos de código, y puedo cambiar lo que estoy omitiendo trozos. Podría estar relacionado con el tamaño del código en sí.

He registrado un informe de error muy detallado con Adobe aquí: http://bugs.adobe.com/jira/browse/FB-32192. Incluye un archivo de AIRI que puede empaquetar para reproducir el problema, un script de ruby ​​que genera el código de ActionScript para generar ese archivo de AIRI, y un resumen de todas las cosas que intenté antes de registrar el error.

¿Alguien más ha intentado compilar grandes proyectos con el paquete de iOS? ¿Hay alguna solución alternativa conocida?

+0

¿Estás usando Flex 4.5.1? Si no es así, te sugiero actualizar tu SDK y herramientas y ver si todavía tienes problemas. Flex 4 (y su versión AIR relacionada) no están optimizados para la implementación de iOS. – JeffryHouser

+0

Sí, todo está en flex 4.5.1 y usando AIR 2.7. – karl

+0

La pregunta decía Flex 4, así que quería estar seguro. Desafortunadamente, puedo Ayuda más. Ojalá alguien más pueda. +1 de mí. – JeffryHouser

Respuesta

0

No hay nada que puedas hacer al respecto, es un problema conocido el empaquetador de adobe. Lo único que haría es tratar de establecer el tamaño de min-heap muy alto o tal vez algo loco como ejecutarlo con jdb (incluso si no hay símbolos de depuración ...).

0

Trate de usar Ant para controlar el proceso, descrito here, y luego ajustar los parámetros de Java en hormiga de la siguiente manera:

fork="true" 
maxmemory="256m" 
1

tratan de utilizar los tiempos de ejecución de Java de 64 bits. Resolvió el problema similar para mí: el proyecto se empaquetó exitosamente utilizando x64 Java Runtimes solamente, el proceso Java x86 no pudo asignar tanta RAM como fue necesario para empaquetar mi proyecto incluso con el aumento del tamaño de los heap.

Cuestiones relacionadas