Ce site met a disposition le build journalier de la traduction francaise du Maven: The Definitive Guide
Consultez :
  • Les documents de reference sur le projet original
  • Les sources de la traduction fr sur GitHub
  • maven


    19.3.2. Création d'une application Flex

    Pour créer une application Flex à partir d'un archétype Maven, lancer la commande suivante :

    $ mvn archetype:generate \
      -DarchetypeRepository=http://repository.sonatype.org/content/groups/public \
      -DarchetypeGroupId=org.sonatype.flexmojos \
      -DarchetypeArtifactId=flexmojos-archetypes-application \
      -DarchetypeVersion=3.3.0
    [INFO] Scanning for projects...
    [INFO] Searching repository for plugin with prefix: 'archetype'.
    [INFO] com.sonatype.maven.plugins: checking for updates from central
    ...
    [INFO] [archetype:generate]
    [INFO] Generating project in Interactive mode
    [INFO] Archetype defined by properties
    ...
    Define value for groupId: : org.sonatype.test
    Define value for artifactId: : sample-application
    Define value for version:  1.0-SNAPSHOT: : 1.0-SNAPSHOT
    Define value for package:  org.sonatype.test: : org.sonatype.test 
    Confirm properties configuration:
    groupId: org.sonatype.test
    artifactId: sample-library
    version: 1.0-SNAPSHOT
    package: org.sonatype.test
     Y: : Y
    [INFO] Parameter: groupId, Value: org.sonatype.test
    [INFO] Parameter: packageName, Value: org.sonatype.test
    [INFO] Parameter: basedir, Value: /Users/Tim/flex-sample
    [INFO] Parameter: package, Value: org.sonatype.test
    [INFO] Parameter: version, Value: 1.0-SNAPSHOT
    [INFO] Parameter: artifactId, Value: sample-application
    [INFO] BUILD SUCCESSFUL
    
    

    Si vous regardez dans le répertoire sample-application/ vous verrez l'arborescence de fichiers illustrée dans la Figure 19.5, « Structure de fichiers issue de l'archétype Application Flex ».

    Structure de fichiers issue de l'archétype Application Flex

    Figure 19.5. Structure de fichiers issue de l'archétype Application Flex


    La génération d'une application Flex via l'archétype produit le POM suivant.

    Exemple 19.7. POM généré par l'archétype Application Flex

    <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.sonatype.test</groupId>
      <artifactId>sample-application</artifactId>
      <version>1.0-SNAPSHOT</version>
      <packaging>swf</packaging>
    
      <name>sample-application Flex</name>
    
      <build>
        <sourceDirectory>src/main/flex</sourceDirectory>
        <testSourceDirectory>src/test/flex</testSourceDirectory>
        <plugins>
          <plugin>
            <groupId>org.sonatype.flexmojos</groupId>
            <artifactId>flexmojos-maven-plugin</artifactId>
            <version>3.3.0</version>
            <extensions>true</extensions>
          </plugin>
        </plugins>
      </build>
    
      <dependencies>
        <dependency>
          <groupId>com.adobe.flex.framework</groupId>
          <artifactId>flex-framework</artifactId>
          <version>3.2.0.3958</version>
          <type>pom</type>
        </dependency>
    
        <!-- flexmojos Unit testing support -->
        <dependency>
          <groupId>org.sonatype.flexmojos</groupId>
          <artifactId>flexmojos-unittest-support</artifactId>
          <version>3.3.0</version>
          <type>swc</type>
          <scope>test</scope>
        </dependency>
      </dependencies>
    
    </project>
    

    La différence entre l'Exemple 19.7, « POM généré par l'archétype Application Flex » et l'Exemple 19.4, « POM d'un archétype pour projet de bibliothèque Flex » se trouve dans le type de packaging : swf plutôt que swc. En positionnant le packaging à swf, le projet produira une application Flex, à savoir l'application target/sample-application-1.0-SNAPSHOT.swf. L'application exemple produite par cet archétype affichera le texte "Hello World". Le fichier source Main.mxml se trouve dans src/main/flex.

    Exemple 19.8. Application exemple Main.mxml

    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
            <mx:Text text="Hello World!"/>
    </mx:Application>
    

    L'archétype produit également un test unitaire FlexUnit simple qui ne fait rien d'autre que d'afficher un message de trace. L'exemple de test unitaire se trouve dans src/test/flex/org/sonatype/test.

    Exemple 19.9. Test unitaire de Main.mxml

    package org.sonatype.test 
    {
    
            import flexunit.framework.TestCase;
            import Main;
    
            public class TestApp extends TestCase 
            {
    
                    public function testNothing():void 
                    {
                            //TODO un implemented
                            trace("Hello test"); 
                    }
            }
    }