Instalação passo a passo do Maven
-
Primeiro você precisa instalar o Maven baixando-o neste link .
-
Em seguida, você precisa descompactar o arquivo baixado e definir a variável de ambiente M2_HOME como um link para o local do arquivo descompactado. Por exemplo, C:\Arquivos de Programas\maven\
-
Para verificar se tudo está instalado, escreva na linha de comando:
versão mvn
-
Se as informações de versão para Maven, Java, etc. forem exibidas, você está pronto para prosseguir.
-
Agora abra o IntelliJIDEA e crie um novo projeto. Na primeira janela, selecione Maven:
-
Clique em Avançar e preencha a seguinte caixa de diálogo:
-
A seguir, crie um projeto no local desejado como padrão.
Após a criação do projeto, preste atenção em sua estrutura:
- a pasta src/main/java contém classes java;
- em src/main/resources - recursos que nossa aplicação utiliza (páginas HTML, imagens, folhas de estilo, etc.);
- src/test - para testes.
Gerenciamento de Dependências no Maven
Você pode ter se deparado com a frase “gerente de dependência” ou “gerente de dependência”. Maven pode fazer tudo. Graças ao Maven, você não precisa gastar muito tempo procurando a biblioteca necessária na Internet, baixando-a e conectando-a ao projeto: basta adicionar a biblioteca necessária à lista de dependências do Maven. As dependências são escritas no nó XML de dependências. Digamos que você precise da biblioteca Apache Commons IO em seu projeto para simplificar o trabalho com arquivos. Para adicionar uma biblioteca, escreva cinco linhas em pom.xml:<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
Seu pom.xml agora deve ficar assim:
<?xml version="1.0" encoding="UTF-8"?>
<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>example.com</groupId>
<artifactId>example</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
</dependencies>
</project>
Depois disso, permita que o IntelliJ IDEA importe a dependência (uma caixa de diálogo deve aparecer no canto inferior direito). Agora a biblioteca está pronta para uso:
import org.apache.commons.io.FileUtils;
import java.io.File;
public class TestMaven {
public static void main(String[] args) {
File tempDirectory = FileUtils.getTempDirectory();
}
}
Todas as dependências subsequentes também devem ser escritas dentro da tag <dependencies>. Você deve estar se perguntando: como saber quais informações você precisa incluir sobre uma biblioteca dentro da tag <dependency>? Tudo é simples aqui. Nesses casos, três parâmetros são sempre especificados: groupId, artefatoId e versão. Você pode descobrir esses parâmetros de duas maneiras:
-
No site da biblioteca. Se precisarmos do Apache Commons IO, acesse o site oficial e selecione a guia Informações de Dependência. Todas as informações necessárias estão aqui - você pode simplesmente copiá-las e adicioná-las à nossa seção de dependências.
-
No repositório Maven . Digite “apache commons io” na pesquisa e você verá todas as versões disponíveis da biblioteca. Após selecionar o que você precisa, basta copiar:
<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.6</version> </dependency>
e adicione ao seu pom.xml.
Tipos de repositórios Maven
Vale a pena mencionar novamente o repositório Maven, porque na verdade temos dois deles - externo (global) e local, no seu computador. Todas as bibliotecas que você adiciona aos seus projetos são salvas no repositório local. Quando o Maven adiciona uma dependência necessária a um projeto, ele primeiro verifica o repositório local quanto à presença de tal biblioteca e, somente se não a encontrar lá, recorre ao externo. Como você pode ver, você pode usar o Maven para adicionar dependências, mas isso não é tudo que ele pode fazer.Construindo um projeto Java usando Maven
Esse recurso pode parecer inútil para um novato. Por que isso é necessário se existe um IDE? Mas não! Em primeiro lugar, o servidor no qual você deverá construir a aplicação pode não ter apenas um ambiente de desenvolvimento, mas também uma interface gráfica. Em segundo lugar, em grandes projetos, o Maven lida melhor com as tarefas de montagem do projeto. Portanto, não vamos nos atormentar com a espera, mas consideremos o processo de construção de um aplicativo usando Maven.Fases
O processo de construção de um aplicativo é chamado de ciclo de vida de um projeto Maven e consiste em fases. Você pode vê-los no IDEA clicando em Maven> exemplo> Ciclo de vida no canto superior direito: Como você pode ver, existem 9 fases:- clean - remove todos os arquivos compilados do diretório de destino (o local onde os artefatos finalizados são salvos);
- validar – verificar se todas as informações estão disponíveis para construção do projeto;
- compile - arquivos com código fonte são compilados;
- test — os testes são lançados;
- pacote - os arquivos compilados são empacotados (em arquivo jar, war, etc.);
- verificar — verificações são realizadas para confirmar a prontidão do arquivo compactado;
- install - o pacote é colocado no repositório local. Agora pode ser utilizado por outros projetos como biblioteca externa;
- site - a documentação do projeto é criada;
- implantar - o arquivo coletado é copiado para um repositório remoto.
-
via linha de comando:
pacote mvn
-
usando o Intellij IDEA:
Antes do lançamento do pacote, as fases de validação, compilação e teste são executadas. A exceção é a fase limpa. É aconselhável chamá-lo antes de cada construção de novo projeto. As fases podem ser listadas separadas por espaços:
pacote limpo mvn.
Plug-ins
Para adicionar um plugin Maven a um projeto, sua descrição, semelhante às dependências, deve ser colocada em pom.xml nas tags <build> e <plugins>. Por exemplo, precisamos de um plugin para verificar se todas as nossas bibliotecas externas estão usando as versões mais recentes. Depois de um pouco de pesquisa na Internet, você encontrará este plugin com instruções de uso. Vamos definir seu groupId, artefatoId e versão. Vamos anotar quais objetivos ele deve cumprir e em que fase. No nosso caso, a verificação de dependência no pom.xml atual está definida para a fase de validação. Agora nossa “memória” fica assim:<?xml version="1.0" encoding="UTF-8"?>
<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>example.com</groupId>
<artifactId>example</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>com.soebes.maven.plugins</groupId>
<artifactId>uptodate-maven-plugin</artifactId>
<version>0.2.0</version>
<executions>
<execution>
<goals>
<goal>dependency</goal>
</goals>
<phase>validate</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
</dependencies>
</project>
Ainda podemos continuar trabalhando em nosso projeto. Mas vamos tentar mudar a versão do Apache Commons IO para 2.0 e começar a construir o projeto. Obtemos: [ERROR] Failed to execute goal com.soebes.maven.plugins:uptodate-maven-plugin:0.2.0:dependency (default) on project example: There is a more up-to-date version ( 2.6 ) of the dependency commons-io:commons-io:2.0 available. -> [Help 1]
Aqui temos um erro de construção causado pelo plugin. A mensagem de erro informa que estamos usando a versão 2.0 quando a 2.6 está disponível. Em geral, o Maven é uma ferramenta muito útil. Pode parecer difícil de usar no começo, mas pratique, crie seus projetos no Maven, e depois de um tempo você ficará muito feliz com o resultado. Este artigo omitiu deliberadamente muitos detalhes sobre o Maven - nos concentramos no essencial. Mas não há limite para a perfeição: você pode ler mais sobre o Maven no site oficial do produto . Parte 5. Servlets. Escrevendo um aplicativo Web simples Parte 6. Contêineres de servlet Parte 7. Apresentando o padrão MVC (Model-View-Controller) Parte 8. Escrevendo um pequeno aplicativo Spring-Boot
GO TO FULL VERSION