maven
gerenciamento de dependência fácil com maven
problema?


• enormes scripts de build
• muitas dependencias
• desenvolvimento orientado a componentes
Objetivos

• foi criado para simplificar processo de build
  de projetos Java
• padronização de projetos
• forma simples de compartilhar jars entre
  projetos (desenvolvimento orientado a
  coimponentes)
Principais
             funcionalidades
•   build fácil

•   sistema de build uniforme (plugins)

•   prover informação sobre o projeto

    •   mail list

    •   dependency list

    •   unit test report

•   prover melhores práticas
archetypes


• mvn archetype:generate
Criando um projeto

•   mvn archetype:generate -
    DgroupId=com.mycompany.app -
    DartifactId=my-app -
    DarchetypeArtifactId=maven-
    archetype-quickstart -
    DinteractiveMode=false
POM
    project object model
    <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>com.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>Maven Quick Start Archetype</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.8.2</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>
Maven Phases
•   validade

•   compile

•   test

•   package

•   integration-test

•   verify

•   install

•   deploy
Site de documentação


• mvn site
Javadoc


• mvn javadoc:javadoc
IDE


• mvn eclipse:eclipse
• mvn netbeans:netbeans
repositorios de
        componentes

• apache archiva
• repositoios oficiais

Quick intro to Apache Maven

  • 1.
  • 2.
    problema? • enormes scriptsde build • muitas dependencias • desenvolvimento orientado a componentes
  • 3.
    Objetivos • foi criadopara simplificar processo de build de projetos Java • padronização de projetos • forma simples de compartilhar jars entre projetos (desenvolvimento orientado a coimponentes)
  • 4.
    Principais funcionalidades • build fácil • sistema de build uniforme (plugins) • prover informação sobre o projeto • mail list • dependency list • unit test report • prover melhores práticas
  • 5.
  • 6.
    Criando um projeto • mvn archetype:generate - DgroupId=com.mycompany.app - DartifactId=my-app - DarchetypeArtifactId=maven- archetype-quickstart - DinteractiveMode=false
  • 7.
    POM project object model <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>com.mycompany.app</groupId> <artifactId>my-app</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>Maven Quick Start Archetype</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.8.2</version> <scope>test</scope> </dependency> </dependencies> </project>
  • 8.
    Maven Phases • validade • compile • test • package • integration-test • verify • install • deploy
  • 9.
  • 10.
  • 11.
    IDE • mvn eclipse:eclipse •mvn netbeans:netbeans
  • 12.
    repositorios de componentes • apache archiva • repositoios oficiais

Notas do Editor