2013-05-16 13 views
6

Sto lavorando su qualche progetto utilizzando Apache Ant e il mio layout del progetto è la seguente:problema Basedir nel codice Ant

project/build.xml 
project/properties/build.properties 
project/tool/antcontrib.jar 

Ecco, quando ho eseguito il comando ant funzionare bene e la mia directory di base è basedir =" ".

Ora, voglio che il mio layout del progetto per essere come segue:

project/folder/build.xml 
project/properties/build.properties 
project/tool/antcontrib.jar 

Ora, ho cambiato la mia directory di base per basedir = "..". Ho pensato che potesse funzionare. ma ancora non funziona. Quindi non voglio sapere cosa dobbiamo impostare la nostra basedir per '../' Ecco il blocco di codice relativo a taskdef definito nel mio file build.xml.

<taskdef resource="net/sf/antcontrib/antlib.xml"> 
     <classpath> 
      <pathelement location="${tool.ant.contrib}"/> 
     </classpath> 
    </taskdef> 

NOTA: ho saputo che build.xml e file di proprietà devono essere nella stessa cartella di propria una pratica standard. Ma non voglio seguirlo ... nessuno mi può aiutare qui ...

+0

si ottiene un messaggio di errore con un compito specifico? Se è così puoi pubblicare quella parte del file di costruzione? –

+0

Sono sicuro che se il percorso basato su è impostato correttamente, tutto funzionerà correttamente. Ma la cosa è ../non funziona in basedir. Puoi dire se io uso .. invece di ../ è corretto! –

+2

Cosa intendi con "Non funziona per me", qual è l'errore? Come si chiama formica da quale directory di lavoro? –

risposta

1

Per funzionare, la proprietà tool.ant.contrib dovrebbe essere un percorso relativo, non uno assoluto.

Per esempio, questo pezzo di realizzazione opere:

<project basedir=".."> 
    <property name="tool.ant.contrib" location="tool/antcontrib.jar" /> 
    <taskdef resource="net/sf/antcontrib/antlib.xml"> 
     <classpath> 
      <pathelement location="${tool.ant.contrib}"/> 
     </classpath> 
    </taskdef> 
    <if><isset property="tool.ant.contrib" /> 
     <then><echo message="OK" /></then> 
    </if> 
</project> 
+0

La mia posizione contiene già il percorso relativo e non il par assoluto per tool.ant.contrib nella posizione dell'attributo –

+0

Come richiesto negli altri commenti, c'è qualcosa che manca a risolvere il tuo puzzle. Condividi il tuo errore e il modo in cui imposti la proprietà 'tool.ant.contrib'. –

Problemi correlati