SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Apache Maven Project
Introdução muito Rápida com a Construção de um Projeto Java Simples
Apache Maven
Rudson Kiyoshi S. Carvalho
Apache Maven is a software project management
and comprehension tool. Based on the concept of a
project object model (POM), Maven can manage a
project's build, reporting and documentation from a
central piece of information.
http://maven.apache.org
2
História
• O Maven foi originalmente concebido para simplificar
os processos de construção no projeto Jakarta Turbine.
Haviam vários projetos e cada projeto possuía
diferentes arquivos Ant de construção e arquivos JARs
no CVS.
• O Grupo Apache então desenvolveu o Maven, para
facilitar a construção de vários projetos juntos, bem
como a publicação de informações dos projetos,
implantação, compartilhamento de arquivos JARs por
vários projetos e ajudar na colaboração entre equipes.
O que é uma ferramenta de
construção? (build Tool)
• Uma ferramenta de construção é uma ferramenta
que automatiza o processo de
construção/compilação de um código fonte,
empacotamento (jar, war, ear),
publicação/instalação, e documentação de um
projeto de software.
Para que serve o Maven?
• Compilar e Executar Testes do código fonte.
• Empacotar o código fonte.
• Gerenciar o código fonte.
• Gerenciar as dependências.
• Gerar documentação.
• Criar estruturas de projetos.
• Implantar o projeto em um ou mais servidores.
Como Instalar o Maven?
1. Pré-requisito ter o java instalado. =)
• Maven 3.2 requer JDK >= V.1.6 (a JRE não é suficiente)
2. Realizar o download da última versão no site: http://maven.apache.org
3. Descompactar o arquivo em um diretório padrão de suas ferramentas de
desenvolvimento;
4. Criar as variáveis de ambiente para apontar para a pasta do Maven; (vide os
dois próximos Slides)
• Tenha certeza que a variável de ambiente do java JAVA_HOME existe e aponta para a sua JDK.
5. Abrir a janela do Prompt de comando ou Terminal e digitar mvn ––version [tecle
enter], para conferir se a instalação foi bem sucedida.
6. Fim.
Como configurar as variáveis
de ambiente?
• No Windows:
Utilize as configurações avançadas do sistema
• M2_HOME=seu_caminho_pastasapache-maven-3.2.1
• M2=%M2_HOME%bin
• MAVEN_OPTS=-Xms256m -Xmx512m
• No Linux:
Utilize o Terminal.
• export M2_HOME=/seu_caminho_pastas/apache-maven-3.2.1
• export M2=%M2_HOME%bin
• export MAVEN_OPTS=-Xms256m -Xmx512m
• No Mac:
Utilize o Terminal.
• export M2_HOME=/seu_caminho_pastas/apache-maven-3.2.1
• export M2=%M2_HOME%bin
• export MAVEN_OPTS=-Xms256m -Xmx512m
Configurar o Path do Sistema
• No Windows:
Utilize as configurações avançadas do sistema
• Adicione na variável Path ;%M2%
• No Linux:
Utilize o Terminal.
• export PATH=$M2:$PATH
• No Mac:
Utilize o Terminal.
• export PATH=$M2:$PATH
Resultado do Teste
mvn ––version
Pom Pom Pom
Pooommm
• O arquivo POM (Project Object Model) é a unidade
de trabalho fundamental do projeto Maven, ele
reside na pasta raiz do projeto, contém as
informações sobre o projeto e detalhes das
configurações utilizadas pelo Maven para construir
o projeto; Para a execução de uma tarefa ou meta,
o Mavem irá buscar pelo arquivo pom.xml na raiz de
execução do comando.
Exemplo de um pom.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>
<groupId>br.com.empresa.grupo_projeto</groupId>
<artifactId>projeto_xpto</artifactId>
<version>1.0</version>
</project>
Construção de um Projeto
Simples
• Vamos construir um projeto Java simples, digite as instruções abaixo no
Prompt de comando ou no seu Terminal, a partir da instrução "mvn".
mvn archetype:generate -DgroupId=br.com.empresa.financeiro -DartifactId=projeto_financeiro -
DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
• O Maven irá iniciar o processamento e irá criar a estrutura do projeto
aplicativo java completo.
Estrutura de
pastas criada
Repare que o Maven também criou uma amostra de
arquivo Java Source e um arquivo de teste unitário.
Vamos empacotar o projeto
• Acesse o diretório do projeto criado, neste diretório
deverá existir um arquivo pom.xml, que foi gerado
automaticamente quando instruímos o Maven a
criar o projeto.
• No mesmo diretório do pom.xml execute o
comando: mvn clean package
Estrutura de
pastas criada
Repare que o Maven. adicionou uma nova pasta "target",
com um conjunto de subpastas, nesta pasta target estão
os arquivos compilados, o arquivo empacotado
“projeto_financeiro-1.0-SNAPSHOT.jar" e outros arquivos
referentes a execução dos testes.
Obs. sempre que executamos o comando mvn clean, este
limpara o conteúdo da pasta target para que os arquivos
sejam todos recriados posteriormente.
Testando o código
compilado
• Acesse a pasta target/classes
e execute o comando:
java br.com.empresa.financeiro.App
• Compro um pipoca para quem acertar
o que vai aparecer. =)
Do ppt
• Este conjunto de slides teve o objetivo de ilustrar de
forma sucinta algumas funcionalidades da
ferramenta Maven, não detalhando o significado de
cada instrução e nem abordando o ciclo de vida de
construção de um projeto através da ferramenta, o
objetivo foi fornecer um material introdutório rápido
para uma compreensão inicial, espero que tenha
cumprido sua missão.
Rudson Kiyoshi Souza Carvalho - 17/08/2014
“That’s All Folks.”

Weitere ähnliche Inhalte

Was ist angesagt?

OOP Introduction with java programming language
OOP Introduction with java programming languageOOP Introduction with java programming language
OOP Introduction with java programming languageMd.Al-imran Roton
 
Collection Framework in java
Collection Framework in javaCollection Framework in java
Collection Framework in javaCPD INDIA
 
Java 8-streams-collectors-patterns
Java 8-streams-collectors-patternsJava 8-streams-collectors-patterns
Java 8-streams-collectors-patternsJosé Paumard
 
Java Hibernate Programming with Architecture Diagram and Example
Java Hibernate Programming with Architecture Diagram and ExampleJava Hibernate Programming with Architecture Diagram and Example
Java Hibernate Programming with Architecture Diagram and Examplekamal kotecha
 
Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...
Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...
Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...Edureka!
 
POO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a ObjetosPOO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a ObjetosLudimila Monjardim Casagrande
 
Application Spring MVC/IOC & Hibernate
Application Spring MVC/IOC & HibernateApplication Spring MVC/IOC & Hibernate
Application Spring MVC/IOC & HibernateInes Ouaz
 
Functional Java 8 in everyday life
Functional Java 8 in everyday lifeFunctional Java 8 in everyday life
Functional Java 8 in everyday lifeAndrea Iacono
 
Optimizing Magento by Preloading Data
Optimizing Magento by Preloading DataOptimizing Magento by Preloading Data
Optimizing Magento by Preloading DataIvan Chepurnyi
 
Functional programming with Java 8
Functional programming with Java 8Functional programming with Java 8
Functional programming with Java 8LivePerson
 
Strings in Java
Strings in Java Strings in Java
Strings in Java Hitesh-Java
 
Java collections concept
Java collections conceptJava collections concept
Java collections conceptkumar gaurav
 
Joshua bloch effect java chapter 3
Joshua bloch effect java   chapter 3Joshua bloch effect java   chapter 3
Joshua bloch effect java chapter 3Kamal Mukkamala
 
Mock Server Using WireMock
Mock Server Using WireMockMock Server Using WireMock
Mock Server Using WireMockGlobant
 
Garbage collection in .net (basic level)
Garbage collection in .net (basic level)Garbage collection in .net (basic level)
Garbage collection in .net (basic level)Larry Nung
 

Was ist angesagt? (20)

Solid principles
Solid principlesSolid principles
Solid principles
 
OOP Introduction with java programming language
OOP Introduction with java programming languageOOP Introduction with java programming language
OOP Introduction with java programming language
 
Linux intro 2 basic terminal
Linux intro 2   basic terminalLinux intro 2   basic terminal
Linux intro 2 basic terminal
 
Solid Principles
Solid PrinciplesSolid Principles
Solid Principles
 
Collection Framework in java
Collection Framework in javaCollection Framework in java
Collection Framework in java
 
Java 8-streams-collectors-patterns
Java 8-streams-collectors-patternsJava 8-streams-collectors-patterns
Java 8-streams-collectors-patterns
 
Les collections en Java
Les collections en JavaLes collections en Java
Les collections en Java
 
Java Hibernate Programming with Architecture Diagram and Example
Java Hibernate Programming with Architecture Diagram and ExampleJava Hibernate Programming with Architecture Diagram and Example
Java Hibernate Programming with Architecture Diagram and Example
 
Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...
Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...
Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...
 
POO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a ObjetosPOO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a Objetos
 
Application Spring MVC/IOC & Hibernate
Application Spring MVC/IOC & HibernateApplication Spring MVC/IOC & Hibernate
Application Spring MVC/IOC & Hibernate
 
Functional Java 8 in everyday life
Functional Java 8 in everyday lifeFunctional Java 8 in everyday life
Functional Java 8 in everyday life
 
Optimizing Magento by Preloading Data
Optimizing Magento by Preloading DataOptimizing Magento by Preloading Data
Optimizing Magento by Preloading Data
 
Functional programming with Java 8
Functional programming with Java 8Functional programming with Java 8
Functional programming with Java 8
 
Strings in Java
Strings in Java Strings in Java
Strings in Java
 
Java collections concept
Java collections conceptJava collections concept
Java collections concept
 
Joshua bloch effect java chapter 3
Joshua bloch effect java   chapter 3Joshua bloch effect java   chapter 3
Joshua bloch effect java chapter 3
 
Mock Server Using WireMock
Mock Server Using WireMockMock Server Using WireMock
Mock Server Using WireMock
 
Garbage collection in .net (basic level)
Garbage collection in .net (basic level)Garbage collection in .net (basic level)
Garbage collection in .net (basic level)
 
Laravel Introduction
Laravel IntroductionLaravel Introduction
Laravel Introduction
 

Ähnlich wie Maven introdução Muito Rápida

Tutorial de instalação do Maven
Tutorial de instalação do MavenTutorial de instalação do Maven
Tutorial de instalação do MavenAllan Alves
 
Maven e Nexus. O que são essas ferramentas?
Maven e Nexus. O que são essas ferramentas?Maven e Nexus. O que são essas ferramentas?
Maven e Nexus. O que são essas ferramentas?Jocsa Rosendo
 
Quick intro to Apache Maven
Quick intro to Apache MavenQuick intro to Apache Maven
Quick intro to Apache MavenInformantTalks
 
Maven 3, Sonar e Hudson
Maven 3, Sonar e HudsonMaven 3, Sonar e Hudson
Maven 3, Sonar e HudsonRodrigo Branas
 
Projetos Java com Maven
Projetos Java com MavenProjetos Java com Maven
Projetos Java com MavenEdgar Dantas
 
Apresentação maven
Apresentação mavenApresentação maven
Apresentação mavenAndré Justi
 
Maven: Introdução
Maven: IntroduçãoMaven: Introdução
Maven: IntroduçãoJugVale
 
Testes em aplicações JEE: Montando sua infra de testes automatizados
Testes em aplicações JEE: Montando sua infra de testes automatizadosTestes em aplicações JEE: Montando sua infra de testes automatizados
Testes em aplicações JEE: Montando sua infra de testes automatizadosDiego Santos
 
Suporte a Open Source no Oracle WebLogic 12c - Integração com Maven & Hudson
Suporte a Open Source no Oracle WebLogic 12c - Integração com Maven & HudsonSuporte a Open Source no Oracle WebLogic 12c - Integração com Maven & Hudson
Suporte a Open Source no Oracle WebLogic 12c - Integração com Maven & HudsonRicardo Ferreira
 

Ähnlich wie Maven introdução Muito Rápida (20)

Aula maven
Aula   mavenAula   maven
Aula maven
 
Tutorial de instalação do Maven
Tutorial de instalação do MavenTutorial de instalação do Maven
Tutorial de instalação do Maven
 
Maven e Nexus. O que são essas ferramentas?
Maven e Nexus. O que são essas ferramentas?Maven e Nexus. O que são essas ferramentas?
Maven e Nexus. O que são essas ferramentas?
 
Maven 2
Maven 2Maven 2
Maven 2
 
Plugin Maven no Eclipse
Plugin Maven no EclipsePlugin Maven no Eclipse
Plugin Maven no Eclipse
 
Maven em 10 minutos
Maven em 10 minutosMaven em 10 minutos
Maven em 10 minutos
 
Apache maven
Apache mavenApache maven
Apache maven
 
Quick intro to Apache Maven
Quick intro to Apache MavenQuick intro to Apache Maven
Quick intro to Apache Maven
 
Maven 3, Sonar e Hudson
Maven 3, Sonar e HudsonMaven 3, Sonar e Hudson
Maven 3, Sonar e Hudson
 
Maven
MavenMaven
Maven
 
Apresentacao de Introdução ao Apache Maven
Apresentacao de Introdução ao Apache MavenApresentacao de Introdução ao Apache Maven
Apresentacao de Introdução ao Apache Maven
 
Projetos Java com Maven
Projetos Java com MavenProjetos Java com Maven
Projetos Java com Maven
 
Introdução ao maven
Introdução ao mavenIntrodução ao maven
Introdução ao maven
 
Maven
MavenMaven
Maven
 
Maven - Aula 01
Maven - Aula 01Maven - Aula 01
Maven - Aula 01
 
Introdução a projetos baseados em apache maven
Introdução a projetos baseados em apache mavenIntrodução a projetos baseados em apache maven
Introdução a projetos baseados em apache maven
 
Apresentação maven
Apresentação mavenApresentação maven
Apresentação maven
 
Maven: Introdução
Maven: IntroduçãoMaven: Introdução
Maven: Introdução
 
Testes em aplicações JEE: Montando sua infra de testes automatizados
Testes em aplicações JEE: Montando sua infra de testes automatizadosTestes em aplicações JEE: Montando sua infra de testes automatizados
Testes em aplicações JEE: Montando sua infra de testes automatizados
 
Suporte a Open Source no Oracle WebLogic 12c - Integração com Maven & Hudson
Suporte a Open Source no Oracle WebLogic 12c - Integração com Maven & HudsonSuporte a Open Source no Oracle WebLogic 12c - Integração com Maven & Hudson
Suporte a Open Source no Oracle WebLogic 12c - Integração com Maven & Hudson
 

Mehr von Rudson Kiyoshi Souza Carvalho

Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. CarvalhoAula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. CarvalhoRudson Kiyoshi Souza Carvalho
 
Palestra Anhanguera de Business intelligence. Prof Rudson Kiyoshi S. Carvalho
Palestra Anhanguera de Business intelligence. Prof Rudson Kiyoshi S. CarvalhoPalestra Anhanguera de Business intelligence. Prof Rudson Kiyoshi S. Carvalho
Palestra Anhanguera de Business intelligence. Prof Rudson Kiyoshi S. CarvalhoRudson Kiyoshi Souza Carvalho
 

Mehr von Rudson Kiyoshi Souza Carvalho (16)

Aula Xml Schema - XSD
Aula Xml Schema - XSDAula Xml Schema - XSD
Aula Xml Schema - XSD
 
Aula 4- Engenharia de Software
Aula 4- Engenharia de SoftwareAula 4- Engenharia de Software
Aula 4- Engenharia de Software
 
Aula 3 - Engenharia de Software
Aula 3 - Engenharia de SoftwareAula 3 - Engenharia de Software
Aula 3 - Engenharia de Software
 
Aula 2 - Processos de Software
Aula 2 - Processos de SoftwareAula 2 - Processos de Software
Aula 2 - Processos de Software
 
Engenharia de Software Aula 1 - Intro
Engenharia de Software Aula 1 - IntroEngenharia de Software Aula 1 - Intro
Engenharia de Software Aula 1 - Intro
 
Aula de DTD Definição do Tipo de Documento
Aula de DTD Definição do Tipo de DocumentoAula de DTD Definição do Tipo de Documento
Aula de DTD Definição do Tipo de Documento
 
Aula Introdução a Linguagem XML
Aula Introdução a Linguagem XMLAula Introdução a Linguagem XML
Aula Introdução a Linguagem XML
 
Aula MS Project Gestão de Projetos
Aula MS Project Gestão de ProjetosAula MS Project Gestão de Projetos
Aula MS Project Gestão de Projetos
 
Aula Gestão de Projetos Escopo, Tempo e Custo
Aula Gestão de Projetos Escopo, Tempo e CustoAula Gestão de Projetos Escopo, Tempo e Custo
Aula Gestão de Projetos Escopo, Tempo e Custo
 
Aula Gestão de Projetos
Aula Gestão de ProjetosAula Gestão de Projetos
Aula Gestão de Projetos
 
Marketing inteligente
Marketing inteligenteMarketing inteligente
Marketing inteligente
 
Data Warehouse - Modelagem
Data Warehouse - ModelagemData Warehouse - Modelagem
Data Warehouse - Modelagem
 
Business Intelligence - Data Warehouse
Business Intelligence - Data WarehouseBusiness Intelligence - Data Warehouse
Business Intelligence - Data Warehouse
 
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. CarvalhoAula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
Aula de Analise e Projetos - Diagramas UML - prof. Rudson Kiyoshi S. Carvalho
 
Introdução ao banco de dados
Introdução ao banco de dadosIntrodução ao banco de dados
Introdução ao banco de dados
 
Palestra Anhanguera de Business intelligence. Prof Rudson Kiyoshi S. Carvalho
Palestra Anhanguera de Business intelligence. Prof Rudson Kiyoshi S. CarvalhoPalestra Anhanguera de Business intelligence. Prof Rudson Kiyoshi S. Carvalho
Palestra Anhanguera de Business intelligence. Prof Rudson Kiyoshi S. Carvalho
 

Kürzlich hochgeladen

Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...marcelafinkler
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfHELENO FAVACHO
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTailsonSantos1
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfHELENO FAVACHO
 
Texto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.pptTexto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.pptjricardo76
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...PatriciaCaetano18
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxMarcosLemes28
 
GÊNERO CARTAZ - o que é, para que serve.pptx
GÊNERO CARTAZ - o que é, para que serve.pptxGÊNERO CARTAZ - o que é, para que serve.pptx
GÊNERO CARTAZ - o que é, para que serve.pptxMARIADEFATIMASILVADE
 
migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosLucianoPrado15
 
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxSlides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxLuizHenriquedeAlmeid6
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaHELENO FAVACHO
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do séculoBiblioteca UCS
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*Viviane Moreiras
 
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...DirceuNascimento5
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfHELENO FAVACHO
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfHELENO FAVACHO
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...Francisco Márcio Bezerra Oliveira
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxTailsonSantos1
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfHELENO FAVACHO
 

Kürzlich hochgeladen (20)

Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
Texto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.pptTexto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.ppt
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptx
 
GÊNERO CARTAZ - o que é, para que serve.pptx
GÊNERO CARTAZ - o que é, para que serve.pptxGÊNERO CARTAZ - o que é, para que serve.pptx
GÊNERO CARTAZ - o que é, para que serve.pptx
 
migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenos
 
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxSlides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do século
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
 

Maven introdução Muito Rápida

  • 1. Apache Maven Project Introdução muito Rápida com a Construção de um Projeto Java Simples Apache Maven Rudson Kiyoshi S. Carvalho
  • 2. Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. http://maven.apache.org 2
  • 3. História • O Maven foi originalmente concebido para simplificar os processos de construção no projeto Jakarta Turbine. Haviam vários projetos e cada projeto possuía diferentes arquivos Ant de construção e arquivos JARs no CVS. • O Grupo Apache então desenvolveu o Maven, para facilitar a construção de vários projetos juntos, bem como a publicação de informações dos projetos, implantação, compartilhamento de arquivos JARs por vários projetos e ajudar na colaboração entre equipes.
  • 4. O que é uma ferramenta de construção? (build Tool) • Uma ferramenta de construção é uma ferramenta que automatiza o processo de construção/compilação de um código fonte, empacotamento (jar, war, ear), publicação/instalação, e documentação de um projeto de software.
  • 5. Para que serve o Maven? • Compilar e Executar Testes do código fonte. • Empacotar o código fonte. • Gerenciar o código fonte. • Gerenciar as dependências. • Gerar documentação. • Criar estruturas de projetos. • Implantar o projeto em um ou mais servidores.
  • 6. Como Instalar o Maven? 1. Pré-requisito ter o java instalado. =) • Maven 3.2 requer JDK >= V.1.6 (a JRE não é suficiente) 2. Realizar o download da última versão no site: http://maven.apache.org 3. Descompactar o arquivo em um diretório padrão de suas ferramentas de desenvolvimento; 4. Criar as variáveis de ambiente para apontar para a pasta do Maven; (vide os dois próximos Slides) • Tenha certeza que a variável de ambiente do java JAVA_HOME existe e aponta para a sua JDK. 5. Abrir a janela do Prompt de comando ou Terminal e digitar mvn ––version [tecle enter], para conferir se a instalação foi bem sucedida. 6. Fim.
  • 7. Como configurar as variáveis de ambiente? • No Windows: Utilize as configurações avançadas do sistema • M2_HOME=seu_caminho_pastasapache-maven-3.2.1 • M2=%M2_HOME%bin • MAVEN_OPTS=-Xms256m -Xmx512m • No Linux: Utilize o Terminal. • export M2_HOME=/seu_caminho_pastas/apache-maven-3.2.1 • export M2=%M2_HOME%bin • export MAVEN_OPTS=-Xms256m -Xmx512m • No Mac: Utilize o Terminal. • export M2_HOME=/seu_caminho_pastas/apache-maven-3.2.1 • export M2=%M2_HOME%bin • export MAVEN_OPTS=-Xms256m -Xmx512m
  • 8. Configurar o Path do Sistema • No Windows: Utilize as configurações avançadas do sistema • Adicione na variável Path ;%M2% • No Linux: Utilize o Terminal. • export PATH=$M2:$PATH • No Mac: Utilize o Terminal. • export PATH=$M2:$PATH
  • 9. Resultado do Teste mvn ––version
  • 10. Pom Pom Pom Pooommm • O arquivo POM (Project Object Model) é a unidade de trabalho fundamental do projeto Maven, ele reside na pasta raiz do projeto, contém as informações sobre o projeto e detalhes das configurações utilizadas pelo Maven para construir o projeto; Para a execução de uma tarefa ou meta, o Mavem irá buscar pelo arquivo pom.xml na raiz de execução do comando.
  • 11. Exemplo de um pom.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> <groupId>br.com.empresa.grupo_projeto</groupId> <artifactId>projeto_xpto</artifactId> <version>1.0</version> </project>
  • 12. Construção de um Projeto Simples • Vamos construir um projeto Java simples, digite as instruções abaixo no Prompt de comando ou no seu Terminal, a partir da instrução "mvn". mvn archetype:generate -DgroupId=br.com.empresa.financeiro -DartifactId=projeto_financeiro - DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false • O Maven irá iniciar o processamento e irá criar a estrutura do projeto aplicativo java completo.
  • 13.
  • 14. Estrutura de pastas criada Repare que o Maven também criou uma amostra de arquivo Java Source e um arquivo de teste unitário.
  • 15. Vamos empacotar o projeto • Acesse o diretório do projeto criado, neste diretório deverá existir um arquivo pom.xml, que foi gerado automaticamente quando instruímos o Maven a criar o projeto. • No mesmo diretório do pom.xml execute o comando: mvn clean package
  • 16.
  • 17. Estrutura de pastas criada Repare que o Maven. adicionou uma nova pasta "target", com um conjunto de subpastas, nesta pasta target estão os arquivos compilados, o arquivo empacotado “projeto_financeiro-1.0-SNAPSHOT.jar" e outros arquivos referentes a execução dos testes. Obs. sempre que executamos o comando mvn clean, este limpara o conteúdo da pasta target para que os arquivos sejam todos recriados posteriormente.
  • 18. Testando o código compilado • Acesse a pasta target/classes e execute o comando: java br.com.empresa.financeiro.App • Compro um pipoca para quem acertar o que vai aparecer. =)
  • 19. Do ppt • Este conjunto de slides teve o objetivo de ilustrar de forma sucinta algumas funcionalidades da ferramenta Maven, não detalhando o significado de cada instrução e nem abordando o ciclo de vida de construção de um projeto através da ferramenta, o objetivo foi fornecer um material introdutório rápido para uma compreensão inicial, espero que tenha cumprido sua missão.
  • 20. Rudson Kiyoshi Souza Carvalho - 17/08/2014 “That’s All Folks.”