<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>blog.coconnut.com &#187; Maven</title>
	<atom:link href="http://www.coconnut.com/blog/category/maven/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.coconnut.com/blog</link>
	<description>Flex, AS3, AS2, flash, css</description>
	<lastBuildDate>Fri, 18 May 2012 09:12:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>Hello World. maven2 + flexmojos en MAC OS X 10.6</title>
		<link>http://www.coconnut.com/blog/2010/12/14/hello-world-maven2-flexmojos-en-mac-os-x-10-6/</link>
		<comments>http://www.coconnut.com/blog/2010/12/14/hello-world-maven2-flexmojos-en-mac-os-x-10-6/#comments</comments>
		<pubDate>Mon, 13 Dec 2010 23:06:25 +0000</pubDate>
		<dc:creator>Carlos Hernández</dc:creator>
				<category><![CDATA[Flex 3]]></category>
		<category><![CDATA[FlexMojos]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.coconnut.com/blog/?p=1029</guid>
		<description><![CDATA[Desde hace unos meses estoy utilizando maven + flexmojos en mis proyectos flex/java. Maven es una herramienta para la gestión y construcción de proyectos JAVA y FlexMojos es un plugin de Maven para la gestión de proyectos Flex. Al principio la relación fue bastante tortuosa, pero le voy pillando el gustillo. Espero que esto se]]></description>
			<content:encoded><![CDATA[<p>Desde hace unos meses estoy utilizando maven + flexmojos en mis proyectos flex/java. Maven es una herramienta para la gestión y construcción de proyectos JAVA y FlexMojos es un plugin de Maven para la gestión de proyectos Flex. Al principio la relación fue bastante tortuosa, pero le voy pillando el gustillo. Espero que esto se convierta en una serie de post sobre Maven, FlexMojos y tecnologías relacionadas, pero empezaremos por crear una aplicación SWF simple a partir de un arquetipo.</p>
<p><a href="http://maven.apache.org/" target="_blank"><img class="aligncenter size-full wp-image-1030" title="maven_logo" src="http://www.coconnut.com/blog/wp-content/uploads/2010/12/maven_logo.gif" alt="" width="462" height="106" /></a><a href="http://flexmojos.sonatype.org/" target="_blank"><img class="aligncenter size-full wp-image-1031" title="FLEXMOJOS" src="http://www.coconnut.com/blog/wp-content/uploads/2010/12/FLEXMOJOS.png" alt="" width="297" height="73" /></a></p>
<p><span id="more-1029"></span></p>
<p><strong>Comprobar Versión Maven</strong></p>
<p>Por defecto en MAC OS X 10.6 tenemos instalado maven 2.2.1 podemos chequearlo abriendo un Terminal y poniendo:</p>
<blockquote><p>mvn -version</p></blockquote>
<p>Si todo está correcto debe aparecer algo parecido a esto:</p>
<blockquote><p>Apache Maven 2.2.1 (r801777; 2009-08-06 21:16:01+0200)<br />
Java version: 1.6.0_22<br />
Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home<br />
Default locale: es_ES, platform encoding: MacRoman<br />
OS name: &#8220;mac os x&#8221; version: &#8220;10.6.5&#8243; arch: &#8220;x86_64&#8243; Family: &#8220;mac&#8221;</p></blockquote>
<p><strong>Configuración</strong></p>
<p>Para poder generar el proyecto a partir de un arquetipo tendremos que configurar nuestro MAVEN añadiendo una serie de repositorios. Esto hay que hacerlo en el fichero de configuración de Maven settings.xml. En mi máquina este fichero está en /usr/share/java/maven-2.2.1/conf/settings.xml</p>
<p>Tenemos que crear un perfil y añadir 2 repositorios.</p>
<blockquote><p>&lt;profiles&gt;<br />
&lt;profile&gt;<br />
&lt;id&gt;flex-mojos&lt;/id&gt;<br />
&lt;repositories&gt;<br />
&lt;repository&gt;<br />
&lt;id&gt;flex-mojos-repository&lt;/id&gt;<br />
&lt;url&gt;http://repository.sonatype.org/content/groups/flexgroup&lt;/url&gt;<br />
&lt;snapshots&gt;<br />
&lt;enabled&gt;true&lt;/enabled&gt;<br />
&lt;updatePolicy&gt;always&lt;/updatePolicy&gt;<br />
&lt;/snapshots&gt;<br />
&lt;releases&gt;<br />
&lt;enabled&gt;true&lt;/enabled&gt;<br />
&lt;/releases&gt;<br />
&lt;/repository&gt;<br />
&lt;/repositories&gt;<br />
&lt;pluginRepositories&gt;<br />
&lt;pluginRepository&gt;<br />
&lt;id&gt;flex-mojos-repository&lt;/id&gt;<br />
&lt;url&gt;http://repository.sonatype.org/content/groups/flexgroup&lt;/url&gt;<br />
&lt;releases&gt;<br />
&lt;enabled&gt;true&lt;/enabled&gt;<br />
&lt;/releases&gt;<br />
&lt;snapshots&gt;<br />
&lt;enabled&gt;true&lt;/enabled&gt;<br />
&lt;/snapshots&gt;<br />
&lt;/pluginRepository&gt;<br />
&lt;/pluginRepositories&gt;<br />
&lt;/profile&gt;<br />
&lt;/profiles&gt;</p>
<p>&lt;activeProfiles&gt;<br />
&lt;activeProfile&gt;flex-mojos&lt;/activeProfile&gt;<br />
&lt;/activeProfiles&gt;</p></blockquote>
<p><strong>Creación de esqueleto de aplicación con Arquetipo</strong></p>
<p>Sonatype proporciona algunos arquetipos para la generación de proyecto Flex sencillos. En este ejemplo utilizaremos uno para la generación de un proyecto SWF simple.</p>
<p>Dentro del workspace de eclipse donde queramos crear el proyecto ejecutamos:</p>
<blockquote><p>mvn archetype:generate -DarchetypeRepository=http://repository.sonatype.org/content/groups/public -DarchetypeGroupId=org.sonatype.flexmojos -DarchetypeArtifactId=flexmojos-archetypes-application -DarchetypeVersion=3.5.0</p></blockquote>
<p>Durante la generación del proyecto el asistente nos pide los datos del proyecto a crear.</p>
<blockquote><p>Define value for property &#8216;groupId&#8217;: : net.caracool.test<br />
Define value for property &#8216;artifactId&#8217;: : ArchetypeTest01<br />
Define value for property &#8216;version&#8217;: 1.0-SNAPSHOT:<br />
Define value for property &#8216;package&#8217;: net.caracool.test:<br />
Confirm properties configuration:<br />
groupId: net.caracool.test<br />
artifactId: ArchetypeTest01<br />
version: 1.0-SNAPSHOT<br />
package: net.caracool.test<br />
Y: y</p></blockquote>
<p>Esta es la estructura del proyecto creado.</p>
<p><img class="aligncenter size-full wp-image-1032" title="Sin título1" src="http://www.coconnut.com/blog/wp-content/uploads/2010/12/Sin-título1.png" alt="" width="288" height="250" /></p>
<p><strong>Compilar la aplicación</strong></p>
<p>Para compilar el proyecto nos colocamos en la carpeta del proyecto creado y ejecutamos:</p>
<blockquote><p>mvn install</p></blockquote>
<p>Al finalizar la compilación y entrar en la fase de tests obtendremos el siguiente error.</p>
<blockquote><p>[INFO] &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
[ERROR] BUILD ERROR<br />
[INFO] &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
[INFO] Failed to launch Flash Player.  Probably java was not able to find flashplayer.<br />
Make sure flashplayer is available on PATH<br />
or use -DflashPlayer.command=${flashplayer executable}</p></blockquote>
<p>Esto es debido a que en el POM del proyecto no se está especificando la localización del Flash Player para la ejecución de tests. Para solucionarlo hay que añadir una propiedad al pom.xml del proyecto que especifique la localización local del flashplayer. Tenemos que añadir las siguientes lineas al pom.xml.</p>
<blockquote><p>…<br />
&lt;properties&gt;<br />
&lt;flashPlayer.command&gt;/Applications/Flash Player.app/Contents/MacOS/Flash Player&lt;/flashPlayer.command&gt;<br />
&lt;/properties&gt;<br />
…<br />
&lt;build&gt;<br />
&lt;sourceDirectory&gt;src/main/flex&lt;/sourceDirectory&gt;<br />
&lt;testSourceDirectory&gt;src/test/flex&lt;/testSourceDirectory&gt;<br />
&lt;plugins&gt;<br />
&lt;plugin&gt;<br />
&lt;groupId&gt;org.sonatype.flexmojos&lt;/groupId&gt;<br />
&lt;artifactId&gt;flexmojos-maven-plugin&lt;/artifactId&gt;<br />
&lt;version&gt;3.5.0&lt;/version&gt;<br />
&lt;extensions&gt;true&lt;/extensions&gt;<br />
&lt;configuration&gt;<br />
&lt;testRunner&gt;<br />
&lt;launcher&gt;<br />
&lt;flashplayerCommand&gt;${flashPlayer.command}&lt;/flashplayerCommand&gt;<br />
&lt;/launcher&gt;<br />
&lt;/testRunner&gt;<br />
&lt;/configuration&gt;<br />
&lt;/plugin&gt;<br />
&lt;/plugins&gt;<br />
&lt;/build&gt;</p></blockquote>
<p>Esto nos permitirá completar la compilación y los test de manera satisfactoria.</p>
<p><strong>Preparar el proyecto para eclipse</strong></p>
<p>Ejecutando la siguiente sentencia generamos los ficheros de proyecto de FlexBuilder.</p>
<blockquote><p>mvn flexmojos:flexbuilder</p></blockquote>
<p>Una vez finalizado con éxito, podemos importar el proyecto en FlexBuilder.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-1035" title="Captura de pantalla 2010-12-13 a las 23.51.47" src="http://www.coconnut.com/blog/wp-content/uploads/2010/12/Captura-de-pantalla-2010-12-13-a-las-23.51.47.png" alt="" width="370" height="384" /></p>
<p><!-- @font-face {   font-family: "Cambria"; }p.MsoNormal, li.MsoNormal, div.MsoNormal { margin: 0cm 0cm 10pt; font-size: 12pt; font-family: "Times New Roman"; }div.Section1 { page: Section1; } --> Una vez importado, podremos lanzar la aplicación desde el builder.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-1038" title="Captura de pantalla 2010-12-14 a las 00.02.15" src="http://www.coconnut.com/blog/wp-content/uploads/2010/12/Captura-de-pantalla-2010-12-14-a-las-00.02.15.png" alt="" width="458" height="81" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.coconnut.com/blog/2010/12/14/hello-world-maven2-flexmojos-en-mac-os-x-10-6/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

