2009-08-14 14 views
6

Come aggiungere azioni post-generazione in Flex Builder? Ad esempio, vorrei che la mia build funzionasse normalmente, ed esegua dalla cartella bin; ma mi piacerebbe anche una copia del SWF finale da copiare automaticamente in un'altra cartella (sono stufo di farlo da solo).Azioni di compilazione post in Flex Builder

Grazie!

risposta

1

Vorrei anche raccomandare l'uso di ant.

Ho pubblicato un grande articolo su come installarlo per Flexbuilder qui http://dispatchevent.org/mims/ant-for-flex-part-1/ Penso che ci sia anche un esempio nel mio script di costruzione di copiare i file da un posto all'altro dopo la compilazione.

Buona fortuna!

+0

Oh, perché questo è stato votato? –

+0

Poiché il bombardamento su formica è un * terribile * sostituto per il sistema di build interno di Flex/Flash Builder. Il sistema di compilazione interno potrebbe essere orribile, terribile e stupido, ma almeno non ci vogliono 15 secondi per costruire un progetto quando è cambiato solo un file. –

1

Dovrai creare uno script di compilazione personalizzato. Per qualsiasi motivo, il "builder" predefinito incluso non è modificabile tramite l'interfaccia, quindi dovrai replicare molte delle sue funzionalità. Fortunatamente, (o forse no) Flex Builder usa Apache Ant per i suoi script di compilazione, quindi questo potrebbe o meno essere un modo familiare per farlo.

per creare uno script di generazione personalizzata:

  1. Nella vista Flex Navigator, selezionare un progetto e poi destro del mouse (Control-clic su Macintosh) per visualizzare il menu contestuale e selezionare Proprietà.
  2. Selezionare la pagina delle proprietà di Generatore. Se si utilizzano altri plug-in Eclipse, è possibile che siano elencati più builder. Flex Builder fornisce un costruttore chiamato Flex, che non puoi modificare.
  3. Selezionare Nuovo.
  4. Nella finestra di dialogo Scegli tipo di configurazione, selezionare il tipo di configurazione appropriato. Flex Builder supporta il tipo di programma. Selezionalo e fai clic su OK per continuare. Dalla nuova pagina delle proprietà del builder definite le proprietà del builder e fate riferimento allo script Ant (un file XML).
  5. Fare clic su OK per applicarlo al progetto.

Il builder Flex si basa su Eclipse 3.1, quindi documentation per l'integrazione Ant per quella release è rilevante qui.

Nota: Il supporto Ant deve essere abilitato prima in Flex Builder. Di solito uso Flex Builder come un plugin, piuttosto che la versione standalone, e la versione standalone non viene fornita immediatamente. Here's a tutorial on how to do this.

+0

Si dice che non può eseguire il file XML quando provo questo ... durante la lettura della documentazione di Eclipse, dice che il tipo di configurazione deve essere impostato su Apache Ant, ma non è disponibile in Flex Builder ... qualche idea? –

+0

La pagina del documento di eclissi che ho usato era: http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.platform.doc.user/gettingStarted/qs-81_basics.htm –

+0

Ha funzionato, ma ogni volta che dice "BUILD FAILED", e non più messaggi di errore di quello ... quando eseguo lo script ant sulla linea di comando funziona bene ... –

0

Steve,

Qui è un po 'più in dettaglio sul post script di build. Sarà un semplice file bat. Ad esempio, aggiungi la riga sottostante a un semplice file di testo postbuild.bat (il nome non ha importanza).

copy bin/*.* 'someother location' 

Ciò copierebbe tutto nella cartella bin in un'altra cartella, basta cambiare il "qualcos'altro posizione".

3

È possibile estendere o sostituire il builder utilizzato da Flex Builder 3 con programmi esterni - è una buona scelta.

Se si esegue "Flex Builder 3 standalone" (che è una versione di Eclipse minimalista + il plug-in del builder Flex) in contrasto con il plug-in del builder Flex in un Eclipse standard, è necessario prima installare il supporto ant. Non ho trovato le formiche separatamente confezionate, quindi ho appena selezionato l'ambiente di compilazione Java da Help/Software Updates.

Ora si può andare alle proprietà del progetto (Right-Click sul vostro progetto, Proprietà) e ha scelto Costruttori. Noterai che c'è un Flex Builder per impostazione predefinita, che non puoi rimuovere né modificare. Tuttavia, puoi deselezionarlo e puoi aggiungere altri builder.

Quindi nel tuo caso: "aggiungere" un nuovo costruttore, formica costruttore, selezionare un build.xml (può essere chiamato in modo diverso), preferibilmente all'interno della cartella di progetto, e impostare gli obiettivi corretti. Continuerà a utilizzare il builder IDE interno durante l'esecuzione del task ant proprio prima o dopo. L'ordine sullo schermo sarà l'ordine di costruzione, che è possibile modificare utilizzando i pulsanti freccia.

Ho usato questo per copiare librerie richieste nella mia cartella /lib, compilare i sorgenti Flex che utilizzano la build IDE (che ha Eclipse-integrazione con i messaggi di errore, che una pura formica a base di comando di compilazione avrebbe perso), e copia il risultato in una directory di distribuzione comune, rinominando il file html wrapper in questo processo.

Per dettagli su come scrivere un file ant, fare riferimento allo ant documentation.

+0

Questa è la soluzione migliore, non è necessario replicare il builder predefinito. Ant è notevolmente più lento del compilatore incorporato. Inoltre, non è necessario utilizzare Ant, è sufficiente specificare un file BAT con pochi semplici comandi da eseguire. – davr

0

La soluzione meno elegante ma funzionerà su linux.

Creare un'attività cron da eseguire ogni minuto.

Utilizzare il comando cp con l'opzione "-u". Da "man cp".

-u, --update 
      copy only when the SOURCE file is newer than the destination 
      file or when the destination file is missing 

In crontab -e aggiungere

* * * * * cp -u /path/to/bin-debug/*.swf /path/to/destination/ 

Per soluzione più elegante - Ant la strada da percorrere.

4

So che questo post ha avuto risposta, ma ho trovato qualcosa di più semplice. Sono sicuro che le soluzioni Ant sono la strada da percorrere, ma non mi va di scherzare con le formiche per il mio piccolo progetto. Tutto quello che voglio veramente è avere i miei file html e file swf in diverse directory. Immagino che sia molto da chiedere.

Sto costruendo su Windows, così ho creato un semplice file batch che esegue i miei passi post-build (vale a dire alcuni comandi di spostamento). Ho quindi creato un nuovo builder in flex utilizzando windows cmd.exe. Ho appena detto di chiamare il file batch usando l'opzione/C. Funziona perfettamente ed è stato molto semplice da configurare. Ho provato ad aggiungere schermate, ma credo di essere troppo nuovo per il sito.

Problemi correlati