2013-04-01 10 views
10

Come specificare dir di base, allora corriamo formica come ant -f somedir/dir/build.xml. set Ant basedir rispetto al build.xml, se specificoCome specificare dir di base, allora corriamo formica come formica somedir -f/dir/build.xml

<project basedir="." ..> 

Mi piacerebbe avere basedir indicato per posizionare dove viene eseguita Ant.

+0

è possibile copiare build.xml in un'altra directory? –

+0

sì, ma preferirei non copiare questo file –

+0

link o link simbolico allora? –

risposta

13

Usa -D per sovrascrivere la proprietà basedir:

ant -Dbasedir=`pwd` -f path/to/build.xml 

L'uso di pwd è un Linux-unica cosa, ma si può sempre mettere il percorso assoluto della directory corrente lì, se siete su un altro piattaforma.

Non penso che ci sia un modo per farlo all'interno di build.xml, a meno di rieseguire la formica con l'attività ant.

8

Si può provare a utilizzare subant compito:

Supponendo di avere due cartelle diverse

  1. cartella corrente X:/la vostra/varo/cartella in cui si sta eseguendo formica Comando da

  2. Cartella in cui la destinazione bulid.xml è: Y: /any/folder/with/build.xml

È possibile effettuare le seguenti operazioni:

Creare build.xml in X:/la vostra/varo/cartella con la contenuto successivo:

<target name="mytarget"> 
    <subant target="debug"> 
     <fileset dir="Y:/any/folder/with" includes="build.xml"/> 
    </subant> 
</target> 

Quindi è possibile eseguire formica MyTarget da cartella X:/la vostra/varo/cartella per iniziare a costruire il vostro Y: /any/folder/with/build.xml

Aggiornamento:

È possibile ignorare basedir immobili per subant costruire in questo modo:

<subant target="debug"> 
     <property name="basedir" value="./any/dir/with/project"/> 
     <fileset dir="Y:/any/folder/with" includes="build.xml"/> 
    </subant> 
+0

Buona risposta. Questo è quello che stavo cercando esattamente. Grazie a Vir – paary

+0

contento che abbia aiutato! :) –

Problemi correlati