Ant - File di proprietà
L'impostazione delle proprietà direttamente nel file di build va bene, se stai lavorando con una manciata di proprietà. Tuttavia, per un progetto di grandi dimensioni, ha senso memorizzare le proprietà in un file di proprietà separato.
La memorizzazione delle proprietà in un file separato offre i seguenti vantaggi:
Ti consente di riutilizzare lo stesso file di build, con diverse impostazioni di proprietà per diversi ambienti di esecuzione. Ad esempio, il file delle proprietà di compilazione può essere mantenuto separatamente per gli ambienti DEV, TEST e PROD.
È utile quando non si conoscono i valori di una proprietà (in un particolare ambiente) in anticipo. Ciò consente di eseguire la compilazione in altri ambienti in cui è noto il valore della proprietà.
Non esiste una regola rigida e veloce, ma in genere il file delle proprietà è denominato build.properties e si trova accanto al build.xmlfile. È possibile creare più file delle proprietà di compilazione in base agli ambienti di distribuzione, ad esempiobuild.properties.dev e build.properties.test.
Il contenuto del file delle proprietà di compilazione è simile al normale file delle proprietà java. Contengono una proprietà per riga. Ogni proprietà è rappresentata da un nome e una coppia di valori. Le coppie nome e valore sono separate da un segno di uguale (=). Si consiglia vivamente di annotare le proprietà con commenti appropriati. I commenti sono elencati utilizzando il carattere cancelletto (#).
L'esempio seguente mostra un file build.xml file e i suoi associati build.properties file -
build.xml
<?xml version = "1.0"?>
<project name = "Hello World Project" default = "info">
<property file = "build.properties"/>
<target name = "info">
<echo>Apache Ant version is ${ant.version} - You are at ${sitename} </echo>
</target>
</project>
build.properties
# The Site Name
sitename = www.tutorialspoint.com
buildversion = 3.3.2
Nell'esempio sopra, sitenameè una proprietà personalizzata che è mappata al nome del sito web. È possibile dichiarare un numero qualsiasi di proprietà personalizzate in questo modo. Un'altra proprietà personalizzata elencata nell'esempio precedente èbuildversion, che, in questo caso, si riferisce alla versione della build.
Oltre a quanto sopra, Ant viene fornito con un numero di proprietà di compilazione predefinite, elencate nella sezione precedente, ma rappresentate di seguito ancora una volta.
Sr.No. | Proprietà e descrizione |
---|---|
1 | ant.file La posizione completa del file di build. |
2 | ant.version La versione dell'installazione di Apache Ant. |
3 | basedir Il basedir della build, come specificato in basedir attributo del project elemento. |
4 | ant.java.version La versione del JDK utilizzata da Ant. |
5 | ant.project.name Il nome del progetto, come specificato nel file name atrribute di project elemento. |
6 | ant.project.default-target La destinazione predefinita del progetto corrente. |
7 | ant.project.invoked-targets Elenco separato da virgole dei target che sono stati richiamati nel progetto corrente. |
8 | ant.core.lib La posizione completa del file jar Ant. |
9 | ant.home La home directory dell'installazione di Ant. |
10 | ant.library.dir La home directory per i file della libreria Ant, in genere la cartella ANT_HOME / lib. |
L'esempio presentato in questo capitolo utilizza il ant.version proprietà incorporata.