martes, 12 de enero de 2010

No se pudo encontrar la clase (VerifyError: Error #1014)

Hola a todos.

Una buena práctica a la hora de desarrollar con Flex es usar las RSLs (y en general en cualquier tecnología siempre que permita algo parecido), pero al usarlas es posible introducir ciertos errores que no son tan obvios y lo digo por experiencia personal. Me refiero al famoso error VerifyError Error #1014, este error llevaba un tiempo dándome la lata ya que usamos librerías compartidas entre varios proyectos y funcionaba en unos si y en otros no.

Con este panorama no queda otra que investigar un poco y resulta que el error es bien simple de solucionar. Este error se produce en tiempo de ejecución y se debe al orden de carga de las librerías, ya que si cargamos una librería A antes que otra B y A hace uso de B nos dará este error, ya que no encuentra las clases de B, porque no se han cargado.

Para solucionarlo tan solo debemos ir a nuestro proyecto y definir el orden correcto de las librerias.
  • Si usamos Flex Builder, pulsamos el botón derecho sobre el proyecto y vamos a propiedades (o Alt+Enter) --> "Flex Build Path" --> pestaña "Library path" y usamos los controles "Up" y "Down" para situar las librerías en el orden correcto.
  • O podemos modificarlo directamente en el fichero .actionScriptProperties en los tags

Personalmente, les recomiendo la primera opción por ser más simple, intuitiva y menos propensa a errores.

Saludos.