TEMA 1 Flashcards

1
Q

¿Qué es Maven?

A

Es una herramienta de construcción automática de proyectos Java que permite gestionar dependencias, compilar, ejecutar pruebas y empaquetar aplicaciones mediante archivos XML.

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

¿Qué significa ‘construir’ (build) un proyecto en Maven?

A

Realizar una secuencia ordenada de tareas (como compilar, probar y empaquetar) necesarias para ejecutar la aplicación a partir del código fuente.

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

¿Qué archivo configura un proyecto Maven?

A

El archivo pom.xml (Project Object Model).

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

¿Qué son las coordenadas Maven?

A

Son identificadores únicos de artefactos Maven compuestos por groupId, artifactId y version.

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

¿Qué indica la coordenada groupId en Maven?

A

El identificador del grupo, generalmente representa la organización o empresa desarrolladora.

Ej.: org.ppss

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

¿Qué indica la coordenada artifactId en Maven?

A

Identificador del artefacto, habitualmente el nombre del proyecto.

Ej.: practica1

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

¿Qué indica la coordenada version en Maven?

A

Indica la versión específica del artefacto.

Ej.: 1.0-SNAPSHOT

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

¿Cuál es la estructura estándar básica de directorios en Maven?

A

src/main/java
src/test/java
pom.xml
target/ (generado automáticamente)

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

¿Qué es un ciclo de vida (lifecycle) en Maven?

A

Secuencia predefinida de fases que Maven ejecuta para construir un proyecto.

Ejemplos: default lifecycle, clean lifecycle, site lifecycle.

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

¿Qué diferencia hay entre una fase y una goal en Maven?

A

Una fase es una etapa lógica en la construcción del proyecto, mientras que una goal es una acción específica ejecutable asociada a una fase.

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

¿Cuál es el repositorio local predeterminado de Maven?

A

Se ubica en $HOME/.m2/repository.

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

¿Qué ocurre si falta un artefacto Maven en tu repositorio local?

A

Maven automáticamente lo descarga desde un repositorio remoto.

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

¿Cuál es el ciclo de vida Maven más utilizado?

A

El ciclo de vida por defecto (default lifecycle), que tiene 23 fases.

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

¿Qué es un artefacto Maven?

A

Un archivo empaquetado (generalmente .jar o .war) generado o usado durante el proceso de construcción, identificado por coordenadas.

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

¿Qué es una dependencia en Maven?

A

Librerías externas (.jar) necesarias para compilar, ejecutar o probar el proyecto. Se definen en el archivo pom.xml.

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

¿Qué secciones clave tiene un archivo pom.xml?

A

coordenadas (identificación del proyecto),
propiedades (configuración),
dependencias (librerías externas),
build (configuración del proceso de construcción).

17
Q

¿Cómo ejecutas una fase concreta con Maven desde la terminal?

A

Utilizando el comando mvn <fase>.</fase>

Por ejemplo: mvn compile.

18
Q

¿Cómo ejecutarías varias goals Maven específicas desde la terminal?

A

mvn plugin1:goal1 plugin2:goal2

19
Q

¿Qué hace la fase clean en Maven?

A

Limpia los archivos generados durante construcciones anteriores (elimina el directorio target).

20
Q

¿Qué es un plugin Maven?

A

Conjunto de goals (acciones concretas) que se pueden asociar a fases específicas del ciclo de vida.

21
Q

¿Dónde se almacenan los artefactos Maven descargados desde repositorios remotos?

A

En el repositorio local ($HOME/.m2/repository).

22
Q

¿Qué fase Maven genera el empaquetado del proyecto?

A

La fase package.

23
Q

¿Qué tipo de empaquetado Maven es asumido por defecto si no se indica explícitamente?

A

Empaquetado jar.

24
Q

¿Qué utilidad tienen los arquetipos (archetypes) en Maven?

A

Son plantillas para generar proyectos Maven preconfigurados con estructuras específicas y dependencias.

25
¿Qué diferencia hay entre ejecutar mvn fase y mvn plugin:goal?
mvn fase ejecuta todas las goals asociadas hasta alcanzar la fase indicada. mvn plugin:goal ejecuta solamente la goal específica indicada.
26
¿Qué indica la extensión opcional package en las coordenadas Maven?
El tipo de empaquetado (jar, war, etc.). Si no se indica, Maven asume por defecto jar.
27
¿Qué ocurre si ejecutas Maven y borraste previamente el directorio .m2?
Maven creará automáticamente un nuevo repositorio local y descargará nuevamente los artefactos necesarios.
28
¿Qué función tiene la sección en el pom.xml?
Permite configurar y personalizar la secuencia de acciones (goals) ejecutadas durante la construcción del proyecto.
29
¿Por qué no debes guardar el directorio target en un repositorio Git?
Porque contiene archivos generados automáticamente durante la construcción, que pueden recrearse fácilmente.
30
¿Qué características hacen de Maven una herramienta declarativa en comparación con otras como Make o Ant?
Maven define el proceso de construcción mediante la configuración (declarativa) del pom.xml, sin necesidad de detallar explícitamente las tareas en orden secuencial.