Cocomonio


Blog


GAS3 integração com FlexMojos(Maven)

By ffrizzo November 1st, 2011 Uncategorized No Comments

Olá pessoal vamos a mais um post. Hoje iremos falar sobre GAS3 e a integração com FlexMojos. Para quem não conhece o FlexMojos foi criado por um Brasileiro o Marvin Froeder(@velobr).

Vou partir do principio que todos ja conhecem o basico de Maven. Para quem ainda não conhece e tem interesse na minha opnião o melhor materia de maven é este aqui.

Abaixo segue um exemplo de um pom.xml com um plugin do FlexMojos que gera nossas classes AS3

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>org.graniteds</groupId>
	<artifactId>graniteds-sample</artifactId>
	<version>1.0-SNAPSHOT</version>
	<packaging>swc</packaging>

	<name>GraniteDS</name>

	<build>
		<sourceDirectory>src/main/flex</sourceDirectory>

		<plugins>
			<plugin>
				<groupId>org.sonatype.flexmojos</groupId>
				<artifactId>flexmojos-maven-plugin</artifactId>
				<version>4.0-RC2</version>
				<extensions>true</extensions>
					<dependencies>
						<dependency>
							<groupId>com.adobe.flex</groupId>
							<artifactId>compiler</artifactId>
							<version>4.5.1.21328</version>
							<type>pom</type>
						</dependency>
					</dependencies>
					<executions>
						<execution>
							<goals>
								<goal>generate</goal>
							</goals>
						</execution>
					</executions>
					<configuration>
						<generatorToUse>graniteds22</generatorToUse>
						<baseOutputDirectory>${project.build.sourceDirectory}</baseOutputDirectory>
						<outputDirectory>${project.build.sourceDirectory}</outputDirectory>
						<extraOptions>
							<tide>true</tide>
							<entityFactory>org.granite.generator.as3.DefaultEntityFactory</entityFactory>
							<outputEnumToBaseOutputDirectory>true</outputEnumToBaseOutputDirectory>
						</extraOptions>
						<includeJavaClasses>
							<include>org.graniteds.entities.*</include>
						</includeJavaClasses>
					</configuration>
			</plugin>
		</plugins>
	</build>
		...
</project>

Como podem ver no exemplo acima As configurações são muito parecidas com as configurações utilizadas com ANT. Todas as configurações tem documentação no próprio site do FlexMojos.

Uma das configurações que mais diferem do ANT, é a tag <generatorToUse> está tag informa qual a versão do GAS3 queremos usar, com ANT se quisermos trocar a versão do GAS3 precisamos baixar a versão que desejamos e subistituir o jar. Com FlexMojos isso é muito mais facil, basta indicar nesta tag que ele ira se encarregar de baixar a versão correta.

As Tags <baseOutputDirectory><outputDirectory> indicam aonde as classes serão geradas, no exemplo acima definimos para que o As3.asAs3Base.as sejam gerados no diretório src/ da aplicação.

Em <extraOption> podemos definir outros parametros do GAS3 assim como definimos no plugin para FlashBuilder. Neste exemplo eu adicionei a opção <tide>true</tide> isto indica ao GAS3 que o template utilizado para gerar as classes, são os com suporte ao framework TIDE que veremos nos próximos posts.

Em <includeJavaClasses> podemos indicar em quais pacotes estão nossas entities ou classes que queremos gerar. Todas as classes AS3 são geradas na mesma estrutura que estão as classes java.



Post Comment


Your email address will not be published. Required fields are marked *