Maven Flashcards

1
Q

Como é a estrutura de um pom.xml para as dependencias?

A

<dependencies>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-artifact</artifactId>
<version>${mavenVersion}</version>
</dependency>
</dependencies>

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

O que é o Maven?

A

O Maven é uma ferramenta de automação de build e gerenciamento de dependências para projetos Java.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Qual é o arquivo central do Maven?

A

O arquivo central do Maven é o pom.xml.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

O que significa POM no Maven?

A

POM significa Project Object Model.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Qual o propósito do arquivo pom.xml?

A

O pom.xml contém as configurações do projeto incluindo dependências plugins e informações do build.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Qual o repositório padrão do Maven?

A

O repositório padrão do Maven é o Maven Central.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Onde o Maven armazena dependências localmente?

A

O Maven armazena dependências localmente no diretório ~/.m2/repository.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Como limpar os arquivos gerados pelo build no Maven?

A

Use o comando mvn clean.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Qual comando compila o código-fonte de um projeto Maven?

A

O comando é mvn compile.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Como executar os testes de um projeto Maven?

A

Use o comando mvn test.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Qual comando empacota um projeto Maven em um artefato como JAR ou WAR?

A

O comando é mvn package.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

O que faz o comando mvn install?

A

Ele instala o artefato no repositório local para uso em outros projetos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Como publicar um artefato em um repositório remoto no Maven?

A

Use o comando mvn deploy.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Qual comando mostra a árvore de dependências de um projeto?

A

O comando é mvn dependency:tree.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

O que é um Plugin no Maven?

A

Um plugin é uma extensão que adiciona funcionalidades ao processo de build do Maven.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Qual plugin é usado para compilar código Java no Maven?

A

O plugin é o maven-compiler-plugin.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Como definir a versão do Java no Maven?

A

Configure o maven-compiler-plugin no pom.xml definindo as propriedades source e target.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

O que é o ciclo de vida do Maven?

A

É uma sequência de fases que define como o build do projeto é executado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Quais são os três ciclos de vida principais do Maven?

A

São clean, default e site.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

O que faz o ciclo de vida clean no Maven?

A

Ele remove os arquivos gerados por builds anteriores.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

O que faz o ciclo de vida default no Maven?

A

Ele processa o projeto incluindo compilação testes e empacotamento.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

O que faz o ciclo de vida site no Maven?

A

Ele gera documentação para o projeto.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

O que é um Archetype no Maven?

A

Um Archetype é um template para criar projetos com uma estrutura pré-definida.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Como criar um novo projeto Maven usando um Archetype?

A

Use o comando mvn archetype:generate.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
O que é o repositório local do Maven?
É o repositório no computador do desenvolvedor onde as dependências baixadas são armazenadas.
26
O que é o repositório remoto do Maven?
É um repositório central ou privado onde artefatos são armazenados e compartilhados.
27
Qual a diferença entre dependências diretas e transitivas no Maven?
Dependências diretas são declaradas no pom.xml e transitivas são trazidas automaticamente por outras dependências.
28
Como forçar a atualização de dependências no Maven?
Use o comando mvn clean install -U.
29
O que é o dependencyManagement no Maven?
É uma seção onde versões consistentes de dependências são definidas para serem herdadas por módulos filhos.
30
O que é um Parent POM no Maven?
É um POM que fornece configurações comuns para módulos filhos em projetos multi-módulos.
31
Como adicionar uma dependência ao projeto Maven?
Declare-a dentro da seção no pom.xml.
32
Qual a ordem de herança no Maven?
Primeiro o Parent POM depois o pom.xml do projeto e finalmente os perfis ativos.
33
O que é um perfil no Maven?
Um perfil é uma configuração alternativa que pode ser ativada para diferentes ambientes ou condições.
34
Como ativar um perfil no Maven?
Use o comando ``` mvn -P ```
35
O que são propriedades no Maven?
Propriedades são variáveis definidas no pom.xml para reutilizar valores como versões ou configurações.
36
Como acessar uma propriedade no Maven?
Use a sintaxe ${nomeDaPropriedade} no pom.xml.
37
Como o Maven lida com conflitos de dependências?
Ele escolhe a versão mais próxima do projeto na árvore de dependências.
38
Como excluir uma dependência transitiva no Maven?
Use a tag dentro da dependência que a traz.
39
Como verificar o POM efetivo de um projeto Maven?
Use o comando mvn help:effective-pom.
40
O que significa SNAPSHOT no Maven?
SNAPSHOT é uma versão de desenvolvimento que pode ser atualizada frequentemente.
41
Qual a diferença entre uma versão RELEASE e SNAPSHOT no Maven?
RELEASE é uma versão estável enquanto SNAPSHOT é uma versão em desenvolvimento.
42
O que é o settings.xml no Maven?
É o arquivo de configuração do usuário para repositórios credenciais e outras definições.
43
Onde está localizado o settings.xml do Maven?
No diretório ~/.m2/.
44
Como configurar credenciais para repositórios remotos no Maven?
Adicione-as ao arquivo settings.xml.
45
O que é o mvn dependency:analyze?
É um comando que analisa dependências declaradas e verifica quais são usadas ou não.
46
Como rodar uma classe Java diretamente no Maven?
Use o plugin exec-maven-plugin com o comando mvn exec:java -Dexec.mainClass="".
47
O que é o escopo compile no Maven?
É o escopo padrão onde a dependência está disponível em todas as fases do ciclo de vida incluindo compilação testes e execução.
48
O escopo compile inclui a dependência no artefato final?
Sim o escopo compile inclui a dependência no artefato final.
49
Quando o escopo provided é usado?
Quando a dependência é necessária apenas na compilação mas será fornecida pelo ambiente runtime como um servidor de aplicação.
50
O escopo provided inclui a dependência no artefato final?
Não o escopo provided não inclui a dependência no artefato final.
51
Quando usar o escopo runtime?
Quando a dependência é necessária apenas em tempo de execução e não na compilação.
52
O escopo runtime inclui a dependência no artefato final?
Sim o escopo runtime inclui a dependência no artefato final.
53
Qual o uso típico do escopo test?
O escopo test é usado para dependências que são necessárias apenas durante a execução de testes.
54
O escopo test inclui a dependência no artefato final?
Não o escopo test não inclui a dependência no artefato final.
55
O que é o escopo system?
Escopo usado para dependências fornecidas manualmente pelo sistema local fora do repositório Maven.
56
Por que o uso do escopo system é desencorajado?
Porque ele quebra a portabilidade do projeto e dificulta o gerenciamento de dependências.
57
O escopo system inclui a dependência no artefato final?
Não o escopo system não inclui a dependência no artefato final.
58
O que é o escopo import?
É usado para importar um conjunto de dependências pré-definidas de um BOM no Maven.
59
Quando usar o escopo import?
Quando se deseja gerenciar versões de dependências centralizadas usando um BOM.
60
O escopo import inclui dependências no artefato final?
Não o escopo import apenas gerencia versões e não inclui dependências diretamente.
61
Qual escopo é adequado para dependências usadas em todas as fases do ciclo de vida do Maven?
O escopo compile é adequado para dependências usadas em todas as fases do ciclo de vida.
62
Qual escopo usar para dependências fornecidas por um servidor como a API Servlet?
O escopo provided é usado para dependências fornecidas por um servidor.
63
Qual escopo usar para bibliotecas como drivers de banco de dados necessários apenas na execução?
O escopo runtime é usado para bibliotecas necessárias apenas na execução.
64
Qual escopo usar para frameworks de teste como JUnit?
O escopo test é usado para frameworks de teste.
65
Qual escopo permite especificar manualmente o caminho de um .jar local?
O escopo system permite especificar manualmente o caminho de um .jar local.