User Tools

Site Tools


wiki:maven

This is an old revision of the document!


Encabezado XML:

<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>
  • xmlns, xsi y schemaLocation: Estas son declaraciones XML estándar que indican que este archivo sigue el formato de POM de Maven versión 4.0.0.
  • modelVersion: Es la versión del modelo de Maven, que en este caso es la 4.0.0. Esto es estándar para la mayoría de proyectos Maven.

Información básica del proyecto:

  <groupId>com.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <version>1.0-SNAPSHOT</version>
 
  <name>my-app</name>
  <!-- FIXME change it to the project's website -->
  <url>http://www.example.com</url>
  • groupId: Identificador único de tu proyecto (generalmente coincide con el nombre de dominio de la empresa o equipo, en este caso com.mycompany.app).
  • artifactId: El nombre del proyecto o módulo. Aquí es my-app.
  • version: La versión del proyecto. En este caso, es 1.0-SNAPSHOT. El sufijo SNAPSHOT indica que esta versión está en desarrollo.
  • name: El nombre legible del proyecto, también my-app.
  • url: La URL del proyecto, que aquí es solo un ejemplo y debería actualizarse según el comentario <!– FIXME –>.

Propiedades del proyecto:

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.release>17</maven.compiler.release>
  </properties>
  • project.build.sourceEncoding: Define la codificación de caracteres utilizada en el proyecto, en este caso UTF-8.
  • maven.compiler.release: Establece la versión del JDK que se utilizará para compilar el código, aquí se usa la versión 17 de Java.

Gestión de dependencias (dependencyManagement):

 <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.junit</groupId>
        <artifactId>junit-bom</artifactId>
        <version>5.11.0</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  • dependencyManagement: Este bloque permite administrar las versiones de dependencias para evitar repetirlas en módulos hijos.
  • dependency: Aquí se está importando un “BOM” (Bill of Materials) de JUnit. El BOM es una forma de garantizar que todas las dependencias relacionadas con JUnit (por ejemplo, junit-jupiter-api y junit-jupiter-params) utilicen versiones compatibles entre sí.
  1. groupId: El grupo de la dependencia (org.junit).
  2. artifactId: El nombre del BOM, que es junit-bom.
  3. version: La versión del BOM es 5.11.0.
  4. type: Es de tipo pom, ya que un BOM es un archivo POM que gestiona las versiones de sus dependencias.
  5. scope: Se marca como import para importar la gestión de versiones del BOM a este proyecto.
wiki/maven.1729215731.txt.gz · Last modified: 2024/10/17 22:42 by admin