2008-09-28 20 views
8

¿Alguien ha creado con éxito una aplicación Adobe Air con Maven? Si es así, ¿cuáles son los pasos para que funcione?¿Cómo puedo crear un proyecto de Adobe Air con Maven?

He estado tratando de usar flex-mojos para crear aplicaciones de Air. Cuando configuro el tipo de embalaje como "aswf", como se sugiere en el DashboardSamplePom, Maven se queja de que aswf es un tipo de empaque desconocido. También encontré su air-super-pom, pero no pude encontrar la manera de referenciarlo como padre de mi POM.

Respuesta

2

Cuando un complemento declara un nuevo tipo de paquete, como 'aswf', debe declararlo como una extensión. En tu pom de nivel superior, agrega el elemento de extensiones a la configuración del complemento.

<plugin> 
    <groupId>...</groupId> 
    <artifactId>...</artifactId> 
    <extensions>true</extensions> 
... 
</plugin> 
1

He estado buscando una respuesta a este problema también. Hay un par de sitios que han resultado útiles, aunque todavía no tengo una solución completa.

Comprobar estos para posibles pistas:

En cuanto al tipo de envases, la mayor parte de la información que he encontrado indica que en lugar de utilizar aswf como el paquete escriba, tendrá que usar swf y luego convertir el swf compilado en su ejecutable aéreo creando un impuesto de ejecución para invocar adt.jar Los enlaces de arriba le mostrarán cómo hacer eso.

En cuanto al superpom de aire que encontraste, creo que hay algunas diferentes ... Pero para usar cualquier super pom, necesitas que tu proyecto de flex maven declare el super pom como el principal, con un bloque similar a esto:

<parent> 
    <groupId>org.sonatype.flexmojos</groupId> 
    <artifactId>flexmojos-air-super-pom</artifactId> 
    <version>3.1-SNAPSHOT</version> 
</parent> 

sin embargo simplemente extendiendo el pom de los padres puede no ser suficiente para conseguir su edificio SWF - una vez más, consulte los enlaces de arriba para un tratamiento más detallado de este problema.

-2

En mi caso, simplemente creé un nuevo proyecto maven utilizando el arquetipo org.graniteds.archetypes graniteds-tide-seam-jpa-hibernate y obtuve este error. No sé nada sobre flex, pero simplemente quería un proyecto de muestra usando Seam. Esto parecía un buen candidato. Pero consigo

desconoce el tipo de envase: swf

A pesar de que los <extensiones> verdaderos <extensiones> está presente en el definintion complemento del fichero POM generado.

He leído en otro lado que esto requiere una versión beta de maven. ¿Por qué diablos es sonatype que permite arquetipos que dependen de las versiones beta de maven en su repositorio?

+0

No veo cómo esto es una respuesta a la pregunta original ... – elevine

+0

cierto, dije como un comentario, no una respuesta. –

0

Creé una plantilla de AIR Maven, puede encontrar los detalles en este proyecto github: https://github.com/branscha/tmplt-airapp. La pregunta es bastante antigua, por lo que las versiones/marcos en mi solución podrían no ser adecuados para usted más. La situación de Flex/Air ha cambiado mucho durante los últimos años.

Características de mi solución:

  1. que utilizan un Apache SDK Mavenized (13,0), probablemente debería hacer lo mismo cosa para sus proyectos sean independientes de un repositorio externo Maven . El procedimiento para mavenizar el SDK no es demasiado difícil.
  2. Flexmojos 6.0.1
  3. La aplicación hello-world se puede convertir en una aplicación Android .
  4. El embalaje es (aswf iso que se ha mencionado más arriba) 'aire'
Cuestiones relacionadas