Visão geral do arquivo pom
A estrutura do projeto está descrita no arquivo pom.xml, que deve estar localizado na pasta raiz do projeto. O conteúdo do arquivo de projeto se parece com isso:
<!—Descrição do projeto atual -->
<groupId>...</groupId>
<artifactId>...</artifactId>
<packaging>...</packaging>
<version>... </ version>
<properties>
<!-- Seção de propriedades -->
</properties>
<repositories>
<!-- Seção de repositórios -->
</repositories>
<dependencies>
<!-- Seção de dependências -->
</ dependencies>
<build>
<!-- Seção de compilação -->
</build>
</project>
Nem todas as seções podem estar presentes na descrição do pom.xml. Portanto, as seções de propriedades e repositórios geralmente não são usadas. Os parâmetros de descrição do projeto atual são obrigatórios . Falaremos sobre a última seção agora.
seção de construção
A seção de compilação é opcional - o Maven pode criar um projeto sem ela. Mas se você deseja configurar a montagem de um projeto mais ou menos complexo, será útil entender como tudo funciona lá.
Vejamos um exemplo simples:
<finalName>projectName</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>
Esta seção contém informações básicas sobre construção: onde os arquivos Java estão localizados, arquivos de recursos, quais plugins são usados, onde colocar o projeto construído.
Existem quatro tags principais:
- <nomefinal>
- <sourceDirectory>
- <diretório de saída>
- <recursos>
Vamos analisar brevemente sua finalidade:
A tag <finalName> especifica o nome do arquivo de compilação resultante (jar, war, ear..) que é criado na fase de pacote . Se o parâmetro não for especificado, o valor padrão, artefatoId-version , será usado .
A tag <sourceDirectory> permite redefinir a localização dos arquivos de origem. Por padrão, os arquivos estão localizados no diretório ${basedir}/src/main/java , mas você pode especificar qualquer outro local.
A tag <outputDirectory> especifica o diretório onde o compilador salvará os resultados da compilação - arquivos *.class . O valor padrão é target/classes .
A tag <resources> e suas tags <resource> aninhadas definem a localização dos arquivos de recursos. Os arquivos de recursos são simplesmente copiados para o diretório outputDirectory ao compilar arquivos . O valor padrão do diretório de recursos é src/main/resources .
A seção de montagem pode ser configurada de forma particularmente flexível. Veremos isso com mais detalhes um pouco mais tarde.
GO TO FULL VERSION