Vista generale del file pom
La struttura del progetto è descritta nel file pom.xml, che deve trovarsi nella cartella principale del progetto. Il contenuto del file di progetto è simile al seguente:
<!—Descrizione del progetto corrente -->
<groupId>...</groupId>
<artifactId>...</artifactId>
<packaging>...</packaging>
<version>... </ version>
<properties>
<!-- Sezione Proprietà -->
</properties>
<repositories>
<!-- Sezione Repositories -->
</repositories>
<dependencies>
<!-- Sezione Dipendenze -->
</ dependencies>
<build>
<!-- Sezione Build -->
</build>
</project>
Non tutte le sezioni possono essere presenti nella descrizione pom.xml. Quindi le sezioni delle proprietà e dei repository spesso non vengono utilizzate. I parametri descrittivi del progetto corrente sono obbligatori . Parleremo ora dell'ultima sezione.
sezione costruire
La sezione build è facoltativa : Maven può creare un progetto senza di essa. Ma se vuoi organizzare l'assemblaggio di un progetto più o meno complesso, ti tornerà utile capire come funziona tutto lì.
Diamo un'occhiata a un semplice esempio:
<finalName>nomeprogetto</finalName>
<sourceDirectory>${basedir}/src/java</sourceDirectory>
<outputDirectory>${basedir}/targetDir</outputDirectory>
<resources>
<resource>
<directory>${ basedir}/src/java/resources</directory>
<includes>
<include>**/*.properties</include>
</includes>
</resource>
</resources>
<plugins>
. . .
</plugins>
</build>
Questa sezione contiene informazioni di base sulla creazione: dove si trovano i file Java, i file delle risorse, quali plug-in vengono utilizzati, dove inserire il progetto compilato.
Ci sono quattro tag principali:
- <nomefinale>
- <directoryorigine>
- <directory di output>
- <risorse>
Analizziamo brevemente il loro scopo:
Il tag <finalName> specifica il nome del file di build risultante (jar, war, ear..) che viene creato nella fase del pacchetto . Se il parametro non è specificato, viene utilizzato il valore predefinito, artifactId-version .
Il tag <sourceDirectory> consente di ridefinire la posizione dei file di origine. Per impostazione predefinita, i file si trovano nella directory ${basedir}/src/main/java , ma puoi specificare qualsiasi altra posizione.
Il tag <outputDirectory> specifica la directory in cui il compilatore salverà i risultati della compilazione: i file *.class . Il valore predefinito è target/classes .
Il tag <resources> ei relativi tag <resource> nidificati definiscono la posizione dei file di risorse. I file di risorse vengono semplicemente copiati nella directory outputDirectory durante la creazione di . Il valore predefinito della directory delle risorse è src/main/resources .
La sezione di montaggio può essere configurata in modo particolarmente flessibile. Lo esamineremo più in dettaglio un po 'più tardi.
GO TO FULL VERSION