2010-12-13 18 views
5

Esiste un modo per compilare il progetto maven/flex che non contiene alcun * .mxml? Il progetto flex contiene solo classi ActionScript (ad esempio, la directory "src/flex" contiene solo i file * .as). Il mio pom.xml è qui:Come compilare il progetto maven/flex senza alcun file * .mxml?

<groupId>com.test</groupId> 
<artifactId>test</artifactId> 
<version>1.0-SNAPSHOT</version> 
<name>test</name> 
<packaging>swf</packaging> 
<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.8</version> 
      <extensions>true</extensions> 
      <dependencies> 
       <dependency> 
        <groupId>com.adobe.flex</groupId> 
        <artifactId>compiler</artifactId> 
        <version>4.5.0.18623</version> 
        <type>pom</type> 
       </dependency> 
      </dependencies> 
     </plugin> 
    </plugins> 
</build> 
<dependencies> 
    <dependency> 
     <groupId>com.adobe.flex.framework</groupId> 
     <artifactId>flex-framework</artifactId> 
     <version>4.5.0.18623</version> 
     <type>pom</type> 
    </dependency> 
    <dependency> 
     <groupId>com.adobe.flexunit</groupId> 
     <artifactId>flexunit</artifactId> 
     <version>0.85</version> 
     <type>swc</type> 
     <scope>test</scope> 
    </dependency> 
</dependencies> 

"pacchetto mvn -e" tiri questo errore:

[ERROR] Failed to execute goal org.sonatype.flexmojos:flexmojos-maven-plugin:3.8:compile-swf (default-compile-swf) on project test: Source file not expecified and no default found! -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.sonatype.flexmojos:flexmojos-maven-plugin:3.8:compile-swf (default-compile-swf) on project q-integra-scorecard-ldservice: Source file not expecified and no default found! 

risposta

2

tenta di aggiungere questo all'interno <plug>, dove "Main.as" è la classe:

<configuration> 
    <sourceFile>Main.as</sourceFile> 
</configuration> 
1

Nel mio caso, non ho avuto alcun file di origine primaria (si trattava di un SWC pieno di classi di interfaccia come ISessionProxy.as).

Così ho dovuto fare due cose per ottenere questo lavoro:

1) riferimento mia directory sorgente (sotto il tag build):

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

2) seguire il consiglio che ho trovato on this mail group e the FlexMojos Google Group :

Quindi, ho eliminato tutte le mie dipendenze e le ho aggiunte, una alla volta, fino a quando non ho ottenuto la compilazione. Tutto quello che serviva era:

<dependency> 
    <groupId>com.adobe.flex.framework</groupId> 
    <artifactId>flex-framework</artifactId> 
    <version>${flex.sdk.version}</version> 
    <type>pom</type> 
</dependency> 

ho anche cancellato tutte le dipendenze per il plugin FlexMojos:

<plugin> 
    <groupId>org.sonatype.flexmojos</groupId> 
    <artifactId>flexmojos-maven-plugin</artifactId> 
    <version>${flexmojos.version}</version> 
    <configuration> 
      <targetPlayer>${flash.player.version}</targetPlayer> 
    </configuration> 
</plugin> 

questo ha funzionato per me, la produzione del SWC ho bisogno e spero che aiuta a qualcun altro, anche!

Problemi correlati