maven

  • basado en POM1)
  • patrones y estándaares
  • POM : descripción del proyecto, de que se compone → maven se encargará de hacer
  • gestión de librerias (incluso transitivas)
mvn archetype:create -DgroupId=com.autentia.demoapp -DartifactId=autentiaNegocio
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="<a href="http://www.w3.org/2001/XMLSchema-instance">http://www.w3.org/2001/XMLSchema-instance</a>"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 <a href="http://maven.apache.org/maven-v4_0_0.xsd">http://maven.apache.org/maven-v4_0_0.xsd</a>">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.autentia.demoapp</groupId>
    <artifactId>autentiaNegocio</artifactId>
    <packaging>jar</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>Maven Quick Start Archetype</name>
    <url><a href="http://maven.apache.org/">http://maven.apache.org</a></url>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>
  • gestionarlo con un pom.xml «padre»
  • <parent /> : los hijos heredan la configuración
  • <modules /> && <packaging /> = pom
  • para «entornos» de producción, pruebas, desarrollo
  • desde CLI: -P:<perfil>
  • release : permite gestionar las entregas de nuestra app
    • mvn release:prepare
    • mvn release:perform
  • compiler

1)
Project Object Model
  • development/maven/start.txt
  • Darrera modificació: 27/11/2019 00:42
  • per mate