Como criar um projeto Maven no Eclipse [Guia passo a passo]
Publicados: 2020-09-24Neste artigo, abordaremos algumas questões gerais sobre o Maven, como “O que é Maven?” e descubra como você pode trabalhar em ideias de projetos Maven. Você descobrirá como iniciar projetos Maven e os conceitos básicos com os quais deve estar familiarizado.
Índice
O que é Maven?
Apache Maven é uma ferramenta de gerenciamento de projetos para projetos baseados em Java. Começou como uma ferramenta para lidar com tarefas no projeto Jakarta Turbine. Os desenvolvedores do Maven queriam um método padrão para criar e gerenciar o projeto, pois havia vários projetos sob o Jakarta Turbine. Como resultado, eles criaram o Maven, que se tornou uma das ferramentas mais populares do Apache.
Projetos Maven possuem processos mais fáceis de construir e possuem sistemas uniformes para os mesmos. O acesso às informações do projeto é muito fácil com o Maven devido ao seu método de armazenamento adequado e direto.
O Maven cria projetos através do POM (project object model), o que garante a uniformidade entre todos os projetos Maven. Se você já trabalhou em um projeto Maven no passado, não terá dificuldade em trabalhar em outro. Esta é uma das maiores razões pelas quais o Maven se tornou tão popular entre os desenvolvedores.
Como criar projetos Maven?
Antes de criar seu projeto no Maven, você precisará de um local onde ele possa ser armazenado. Então, vamos criar um diretório e iniciar um shell lá. Para fazer tudo isso, você deve abrir sua linha de comando e executar o objetivo do Maven abaixo:
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false

Lembre-se de que o código pode levar algum tempo para ser executado se você executá-lo logo após a instalação do Maven. Isso acontece porque o Maven baixa os jars de plug-in mais recentes e outros artefatos relevantes em seu repositório selecionado. Às vezes, pode ser necessário executar o comando várias vezes para que ele seja bem-sucedido. Isso acontece porque seus servidores remotos atingem o tempo limite às vezes, mas não é um problema sério e você pode corrigi-lo.
Depois de executar o comando que mencionamos acima, você verá o seguinte diretório com o mesmo que seu attributeId. O diretório seria:
cd meu-aplicativo
Você verá que o diretório tem a seguinte estrutura de projeto:
meu-aplicativo
|– pom.xml
`– src
|– principal
| `– java
| `– com
| `– minha empresa
| `– aplicativo
| `– App.java
`– teste
`– java
`– com
`– minha empresa
`– aplicativo
`– AppTest.java
Aqui, o diretório src/main/java tem o código fonte, o pom.xml é o Project Object Model e o src/test/java tem a fonte de teste.
Nosso código executa o objetivo archetype:generate. Nosso código também passa vários parâmetros para esse objetivo. O prefixo 'arquétipo' é o nome do plugin, que dá o objetivo. Portanto, nosso objetivo archetype:generate cria um projeto pequeno e simples baseado em maven-archetype-quickstart. Podemos dizer que os plugins são apenas múltiplos objetivos agrupados para uma determinada tarefa.
Aprenda: Salário de desenvolvedor da primavera na Índia: para calouros e experientes
O que é POM?
É o centro dos projetos Maven e sua configuração. O arquivo pom.xml é um arquivo de configuração que armazena a maioria das informações necessárias para construir um projeto da maneira desejada. O arquivo POM pode ser bastante grande e complexo, mas não é necessário conhecer seus aspectos técnicos para usá-lo corretamente. O POM do nosso projeto é o seguinte:
<project xmlns=”http://maven.apache.org/POM/4.0.0″ xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=”http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>meu-aplicativo</artifactId>
<version>1.0-INSTANTÂNEO</version>
<propriedades>
<maven.compiler.source>1.7</maven.compiler.source>

<maven.compiler.target>1.7</maven.compiler.target>
</propriedades>
<dependências>
<dependência>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>teste</scope>
</dependency>
</dependencies>
</projeto>
Aqui está um simples resumo dos elementos essenciais do POM:
- project : O elemento mais alto em cada arquivo pom.xml
- groupId : O identificador do grupo de criadores do projeto. É sempre único e é um dos identificadores mais críticos de um projeto.
- url : Mostra a localização (o site) do projeto.
- modelVersion : Mostra a versão do modelo de objeto que o POM atual está empregando. Embora a versão do modelo de objeto não mude com frequência, é crucial para manter o projeto estável.
- build : Executa tarefas relacionadas ao gerenciamento de plugins, declarando a estrutura de diretórios, etc.
- version : Mostra a versão do artefato que seu projeto gerou. O gerenciamento de versões é bastante complicado, e o Apache Maven ajuda você substancialmente com isso.
Existem muitos elementos POM, e se você quiser trabalhar em muitas ideias de projetos Maven, seria melhor se familiarizar com eles. No entanto, você não precisa estar familiarizado com todos eles se for iniciante.
Construindo Projetos Maven
Após as coisas que fizemos na seção anterior, você teria que usar a seguinte linha de comando:
pacote mvn
Ele imprimirá várias ações com o seguinte final:
…
[INFO] ————————————————————————
[INFO] CONSTRUÇÃO DE SUCESSO
[INFO] ————————————————————————
[INFO] Tempo total: 2,953 s
[INFO] Finalizado em: 2019-11-24T13:05:10+01:00
[INFO] ————————————————————————
Você pode se perguntar por que esse comando não tinha um prefixo (como archetype:generate). Isso porque é uma fase e não um objetivo. Um ciclo de vida de construção é uma sequência adequada de várias fases. O Maven executa fases no arranjo que você fornece.
Usando Maven com Java 9 (ou versões posteriores)
Se você quiser usar o Java 9 ou versões posteriores, você teria que usar a versão 3.6.0 do maven-compiler-plugin e definir maven.compiler.release para a versão Jave que você deseja direcionar. Isso porque a versão padrão do Maven usa versões mais antigas do maven-compiler-plugin, que são incompatíveis com o Java 9 e suas versões posteriores. Aqui está um exemplo de uso do Maven com versões posteriores do Java:
- <propriedades>
- <maven.compiler.release>11</maven.compiler.release>
- </propriedades>
- <construir>
- <pluginManagement>
- <plugins>
- <plug-in>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>plugin-compilador-maven</artifactId>
- <version>3.8.1</version>
- </plugin>
- </plugins>
- </pluginManagement>
- </build>
Como todas as ideias de projetos Maven são baseadas em Java, seria melhor saber como usar essa ferramenta com versões posteriores.

Leia também: Microsserviços usando Spring Boot e Spring Cloud
Saiba mais sobre o Maven
O Maven é uma ferramenta fantástica para qualquer profissional de software ou gerente de projeto. Não apenas ajuda você a manter as coisas gerenciáveis, mas também as mantém simples e fáceis de compreender. Você pode aprender muito sobre o Apache Maven trabalhando em algumas ideias de projetos Maven.
Esperamos que você tenha achado este artigo útil. Se você tiver alguma opinião ou dúvida, pode nos informar através dos comentários. Adoraríamos ouvir de você.
Se você estiver interessado em aprender mais sobre desenvolvimento de software full-stack, confira o PG Diploma in Full-stack Software Development do upGrad & IIIT-B, projetado para profissionais que trabalham e oferece mais de 500 horas de treinamento rigoroso, mais de 9 projetos e atribuições, status de ex-alunos do IIIT-B, projetos práticos práticos e assistência de trabalho com as principais empresas.
O que você acha do Maven? Nos informe.