IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Maven Java Discussion :

Création d'un projet Flex avec Maven


Sujet :

Maven Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 179
    Points : 77
    Points
    77
    Par défaut Création d'un projet Flex avec Maven
    Bonjour,

    j'essaie de gérer un projet Flex (qui est un framework Flash) avec Maven. J'ai crée un POM et lancé la commande suivante :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mvn -e clean install
    ça marche mon artifact est bien envoyé dans mon repository local. J'ai des dépendances Flex dans ce POM (extensions en .swc) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    <dependencies>
    		<dependency>
    			<groupId>com.adobe.flex.framework</groupId>
    			<artifactId>flex-framework</artifactId>
    			<version>${flex.sdk.version}</version>
    			<type>pom</type>
    		</dependency>
    		<dependency>
    			<groupId>com.adobe.flexunit</groupId>
    			<artifactId>flexunit</artifactId>
    			<version>0.9</version>
    			<type>swc</type>
    			<scope>test</scope>
    		</dependency>
    		<dependency>
    			<groupId>org.puremvc</groupId>
    			<artifactId>pureMVC</artifactId>
    			<version>1.0.0-SNAPSHOT</version>
    			<type>swc</type>
    		</dependency>
    	</dependencies>
    Pour le type "pom" et le scope "test", c'est donc normal de ne pas voir ces artifact sous Flash Builder (IDE basé sur Galiléo je crois). Par contre pour la dépendance pureMVC qui est un swc importé localement par mes soins avec install:install-file je ne vois pas cette dépendance sous Flash Builder ?

    D'ailleurs, je ne vois pas de librairie "Maven Dependencies" comme sous Indigo (même si elle est vide). Sous Flash Builder, se peut il qu'elle n'apparaissent pas dans mon explorateur de projet justement parce qu'elle est vide ? Et comme je m'explique mal comme toujours, voici 3 copies d'ecrans réalisées sous Flash Builder :

    Nom : screen1.jpg
Affichages : 94
Taille : 12,4 Ko

    Nom : screen2.jpg
Affichages : 125
Taille : 90,6 Ko

    Nom : screen3.jpg
Affichages : 90
Taille : 69,6 Ko

    Aucune traces donc de ma librairie pureMVC...Je précise qu'en retirant cette dépendance de mon POM, mon artifact généré fait la même taille j'en conclue donc pureMVC n'est pas ajouté lors du package...

    Quelqu'un saurait il me dire comment gérer les dépendances d'un projet avec Maven ?


    Merci


    PS: à mon avis la dépendance flexunit est elle correctement importée puisque mes tests unitaires se passent bien.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 179
    Points : 77
    Points
    77
    Par défaut
    J'ai surement trouvé la réponse à mon problème mais je sais pas comment l'implémenter

    Hi,

    Flash Builder 4.5 will ignore the dependencies in your pom file, so you will need to copy all swc dependencies into a folder and set it as a swc folder.
    A simple way to automate it:

    1. create a folder in your project root, eg. libs-generated

    2. go to properties>Flex Build Path>Add SWC Folder. Select the folder you created in your pom.xml

    3. Edit your pom.xml and create a hook to process-sources maven lifecycle phase where you copy all dependencies into libs-generated
    You can use the copy-dependencies goal for this.

    I hope it helped,

    Zoltan
    Peut on automatiser la création du répertoire, et la copie des dépendances directement dedans via une tache ant par exemple (que je connais pas) ?

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 179
    Points : 77
    Points
    77
    Par défaut
    J'ai partiellement réussi

    Tout marche maintenant sauf que je dois faire manuellement l'ajout sous Flash Builder du répertoire de libs contenant pureMVC. Je vais voir si je peux pas automatiser la chose...

    Voici mon pom si un jour quelqu'un rencontre le soucis

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
     
    <?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>com.test</groupId>
    	<artifactId>flexMaven</artifactId>
    	<version>1.0-SNAPSHOT</version>
    	<packaging>swf</packaging>
    	<name>flexMaven</name>
     
    	<properties>
    		<flex.sdk.version>4.5.0.20967</flex.sdk.version>
    		<libs.flex.directory>libs-maven</libs.flex.directory>
    	</properties>
     
    	<pluginRepositories>
    		<pluginRepository>
    			<id>flexmojos</id>
    			<url>http://repository.sonatype.org/content/groups/flexgroup/</url>
    		</pluginRepository>
    	</pluginRepositories>
     
    	<repositories>
    		<repository>
    			<id>flexmojos</id>
    			<url>http://repository.sonatype.org/content/groups/flexgroup/</url>
    		</repository>
    	</repositories>
     
    	<dependencies>
    		<dependency>
    			<groupId>com.adobe.flex.framework</groupId>
    			<artifactId>flex-framework</artifactId>
    			<version>${flex.sdk.version}</version>
    			<type>pom</type>
    		</dependency>
    		<dependency>
    			<groupId>com.adobe.flexunit</groupId>
    			<artifactId>flexunit</artifactId>
    			<version>0.9</version>
    			<type>swc</type>
    			<scope>test</scope>
    		</dependency>
    		<dependency>
    			<groupId>org.puremvc</groupId>
    			<artifactId>pureMVC</artifactId>
    			<version>1.0.0-SNAPSHOT</version>
    			<type>swc</type>
    		</dependency>
    	</dependencies>
     
    	<build>
    		<sourceDirectory>src/main/flex</sourceDirectory>
    		<testSourceDirectory>src/test/flex</testSourceDirectory>
    		<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>${flex.sdk.version}</version>
    						<type>pom</type>
    					</dependency>
    					<dependency>
    						<groupId>com.adobe.flex.compiler</groupId>
    						<artifactId>asdoc</artifactId>
    						<version>${flex.sdk.version}</version>
    						<classifier>template</classifier>
    						<type>zip</type>
    					</dependency>
    				</dependencies>
    			</plugin>
    			<plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-antrun-plugin</artifactId>
    				<version>1.6</version>
    				<executions>
    					<execution>
    						<phase>process-resources</phase>
    						<goals>
    							<goal>run</goal>
    						</goals>
    						<configuration>
    							<target name="Creation du repertoire de libs Maven pour Flex">
    								<mkdir dir="${project.basedir}/${libs.flex.directory}" />
    							</target>
    						</configuration>
    					</execution>
    				</executions>
    			</plugin>
    			<plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-dependency-plugin</artifactId>
    				<version>2.3</version>
    				<executions>
    					<execution>
    						<phase>process-resources</phase>
    						<goals>
    							<goal>copy-dependencies</goal>
    						</goals>
    						<configuration>
    							<outputDirectory>${project.basedir}/${libs.flex.directory}</outputDirectory>
    							<includeArtifactIds>pureMVC</includeArtifactIds>
    						</configuration>
    					</execution>
    				</executions>
    			</plugin>
    		</plugins>
    	</build>
     
    </project>

    Merci quand même

    @+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. gestion projet multimodule avec maven assembly
    Par yenfou2000 dans le forum Maven
    Réponses: 0
    Dernier message: 30/03/2010, 14h38
  2. Comment reprendre un projet existant avec maven
    Par Anthony14 dans le forum Maven
    Réponses: 6
    Dernier message: 22/04/2009, 11h16
  3. Réponses: 2
    Dernier message: 02/04/2009, 16h42
  4. Création d'un plugin eclipse avec maven
    Par afkkir dans le forum Maven
    Réponses: 7
    Dernier message: 10/07/2008, 14h34
  5. creation d'un projet Xfire avec Maven
    Par friedamichelle dans le forum Maven
    Réponses: 5
    Dernier message: 31/01/2008, 15h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo