introdução a projetos baseados em apache maven
Post on 14-Apr-2017
55 Views
Preview:
TRANSCRIPT
INTRODUÇÃO A PROJETOS BASEADOS EM APACHE MAVEN
08 de Dezembro 2016
Nome: Fabian Cesar Pereira Brandão ManoelE-mail: fabiancpbm@gmail.com
OUTLINE 1.0. O que é MAVEN
2.0. Principais conceitos
3.0. Benefícios
4.0. Primeiro projeto MAVEN no Eclipse
5.0. Conclusão
6.0. Referências bibliográficas
OUTLINE 1.0. O que é MAVEN
2.0. Principais conceitos
3.0. Benefícios
4.0. Primeiro projeto MAVEN no Eclipse
5.0. Conclusão
6.0. Referências bibliográficas
4Introdução a projetos baseados em Apache Maven
1.0. O QUE É O MAVEN
Ferramenta que gerencia dependências e ciclo de vida de projetos de software. Esta gerencia inclui:
Facilidade de compilação, empacotamento, testes unitários, etc;
5Introdução a projetos baseados em Apache Maven
Ferramenta que gerencia dependências e ciclo de vida de projetos de software. Esta gerencia inclui:
Possibilidade de união e automatização do processo de geração de um sistema;
1.0. O QUE É O MAVEN
6Introdução a projetos baseados em Apache Maven
Ferramenta que gerencia dependências e ciclo de vida de projetos de software. Esta gerencia inclui:
Centralizar informações do projeto organizadamente, como dependências, resultado de testes, documentação, etc;
1.0. O QUE É O MAVEN
7Introdução a projetos baseados em Apache Maven
Ferramenta que gerencia dependências e ciclo de vida de projetos de software. Esta gerencia inclui:
Tendência à boas práticas de programação;Controle de versões geradas;
1.0. O QUE É O MAVEN
8Introdução a projetos baseados em Apache Maven
1.0. O QUE É O MAVEN
Projeto MAVEN é uma pasta com:Arquivo pom.xml;Diretório de código fonte src;
OUTLINE 1.0. O que é MAVEN
2.0. Principais conceitos
3.0. Benefícios
4.0. Primeiro projeto MAVEN no Eclipse
5.0. Conclusão
6.0. Referências bibliográficas
10Introdução a projetos baseados em Apache Maven
2.0. PRINCIPAIS CONCEITOS
2.1. Artefato2.2. Arquivo POM2.3. Repositório remoto e local2.4. Goals, plugins e phases2.5. Ciclo de vida2.6. Estrutura padrão de projeto
11Introdução a projetos baseados em Apache Maven
2.0. PRINCIPAIS CONCEITOS
•Para o MAVEN, todo projeto é um Artefato.•Estes artefatos são armazenados em um repositório de artefatos;•Podem estar nos formatos WAR, EAR ou JAR;•Cada artefato tem as Coordenadas Maven definidas no pom.xml. Estas coordenadas são:
2.1. Artefatos
•GroupId;•ArtifactId;•Version;
12Introdução a projetos baseados em Apache Maven
2.0. PRINCIPAIS CONCEITOS
Dependências: São Artefatos que determinado artefato (projeto) depende para funcionar. Para possuir a dependência, deve-se conhecer as Coordenadas Maven;
2.1. Artefatos
13Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
•É a unidade básica do MAVEN no formato XML, onde são declaradas todas as informações do projeto. Baseado nisso, seu MAVEN poderá:
•É usado apenas como modelo de dados hierárquicos;•Segue um exemplo de um arquivo pom.xml:
Validar, compilar, testar, empacotar, instalar …
14Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
•É a unidade básica do MAVEN no formato XML, onde são declaradas todas as informações do projeto. Baseado nisso, seu MAVEN poderá:
•É usado apenas como modelo de dados hierárquicos;•Segue um exemplo de um arquivo pom.xml:
Construir estrutura de trabalho…
15Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
•É a unidade básica do MAVEN no formato XML, onde são declaradas todas as informações do projeto. Baseado nisso, seu MAVEN poderá:
•É usado apenas como modelo de dados hierárquicos;•Segue um exemplo de um arquivo pom.xml:
Definir dependências.
16Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
•É a unidade básica do MAVEN no formato XML, onde são declaradas todas as informações do projeto. Baseado nisso, seu MAVEN poderá:
•É usado apenas como modelo de dados hierárquicos;•Segue um exemplo de um arquivo pom.xml:
Definir dependências.
17Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
18Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
19Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
20Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
21Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
22Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
ModelVersion
GroupId
ArtifactId
Versão de trabalho do pom.xml
Grupo ou empresa do projeto
Identificação do artefato. Deve ser único dentro do mesmo GroupId
23Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
packaging Formato de pacote de projeto
Version Versão do artefato
24Introdução a projetos baseados em Apache Maven
2.2. Arquivo POM
2.0. PRINCIPAIS CONCEITOS
Version Versão do artefato
Correção de médios e grandes erros
Revisões básicas
Artefato ainda em fase de produção
Modificação significativa
25Introdução a projetos baseados em Apache Maven
2.3. Repositório remoto e local
2.0. PRINCIPAIS CONCEITOS
SEU PROJETO
REPOSITÓRIO DE ARTEFATOS LOCAL
REPOSITÓRIO CENTRAL DE ARTEFATOS REMOTO
INTERNET INTRANET
...
26Introdução a projetos baseados em Apache Maven
2.4. Goals, plugins e phases
2.0. PRINCIPAIS CONCEITOS
PLUGINs
GOALs: Tarefas pré-definidasPHASEs: Série de goals pré-definidos
27Introdução a projetos baseados em Apache Maven
2.5. Ciclo de vida
2.0. PRINCIPAIS CONCEITOS
•O MAVEN impõe aos seus artefatos um determinado ciclo de vida. Ou seja, todo tempo de vida de um artefato (construção e distribuição) está claramente definido;•Os ciclos de vida contêm phases pré-definidas; •Os ciclos de vida são:
DEFAULT CLEAN SITE
Toda fase de construção responsável por tornar o projeto em um Artefato
local, ou seja, direcioná-lo à pasta .m2.
Toda fase de construção responsável por limpar o
diretório alvo, permitindo iniciar o ciclo DEFAULT
totalmente limpo.
Toda fase de construção responsável construir a
documentação do projeto no site.
28Introdução a projetos baseados em Apache Maven
2.5. Ciclo de vida
2.0. PRINCIPAIS CONCEITOS
DEFAULT
VALIDATE
COMPILE
TEST
PACKAGE
VERIFY
INSTALL
DEPLOY
valida o projeto, verificando se o projeto possui padrão documental.
compila o código fonte.
realiza os testes unitários.
empacota o código compilado em um JAR, WAR, EAR.
verifica resultado de testes de integração para garantia de qualidade.
adiciona o pacote gerado ao repositório local.
adiciona o pacote no repositório remoto.
29Introdução a projetos baseados em Apache Maven
2.6. Estrutura padrão de projeto
2.0. PRINCIPAIS CONCEITOS
Local onde o Maven armazena todos os seus resultados gerados.
Local de suporte às necessidades do teste.
Local onde encontra-se os testes unitários a serem executados.
Local de suporte às necessidades do projeto.
Local onde encontra-se o Código fonte a ser utilizado como projeto
Local que concentra todas as informações do seu projeto.
OUTLINE 1.0. O que é MAVEN
2.0. Principais conceitos
3.0. Benefícios
4.0. Primeiro projeto MAVEN no Eclipse
5.0. Conclusão
6.0. Referências bibliográficas
31Introdução a projetos baseados em Apache Maven
3.0. BENEFÍCIOS
Centralização de informações: todas informações do projeto são centralizadas em pom.xml, assim, evitamos repetições de processos de builders, por exemplo;
32Introdução a projetos baseados em Apache Maven
3.0. BENEFÍCIOS
Padronização do ambiente de desenvolvimento: os métodos de tempo de vida e construção, ao serem gerenciados pelo Maven, padronizam os processos em todos os ambientes de desenvolvimento;
33Introdução a projetos baseados em Apache Maven
3.0. BENEFÍCIOS
Gerenciamento de dependências: o Maven cuida de todas as dependências dos seus projetos e as adiciona no classpath. Caso uma dependência dependa de outro recurso, este também será instalado no classpath;
34Introdução a projetos baseados em Apache Maven
3.0. BENEFÍCIOS
Facilidade de compreensão: ao adotar o modelo de organização do Maven, torna-se mais fácil a compreensão e localização de códigos. Assim, um desenvolvedor pode não conhecer um código, mas saberá, por exemplo, como funciona seu ciclo de vida;
OUTLINE 1.0. O que é MAVEN
2.0. Principais conceitos
3.0. Benefícios
4.0. Primeiro projeto Maven no Eclipse
5.0. Conclusão
6.0. Referências bibliográficas
36Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
INSTALE O MAVEN: Na página de Download do Maven, instale os arquivos binários do apache-maven.
37Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
INSTALE O MAVEN: Descompacte o arquivo em um local bem definido. O objetivo é que esse arquivo seja reconhecido como variável de ambiente do PC em trabalho.
38Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
INSIRA O MAVEN ÀS VARIÁVEIS DE AMBIENTE: Isso permitirá que as aplicações com o maven possam serem feitas via CMD.
39Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
INSIRA O MAVEN ÀS VARIÁVEIS DE AMBIENTE:
Em avançado clique em “variáveis de ambiente”
40Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
INSIRA O MAVEN ÀS VARIÁVEIS DE AMBIENTE:
Na janela que se abre, selecione o botão “novo” no local desejado. Então, adicione a variável de ambiente da seguinte forma:
41Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
INSIRA O MAVEN ÀS VARIÁVEIS DE AMBIENTE:
Depois, edite o Path das variáves de ambiente.
42Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
INSIRA O MAVEN ÀS VARIÁVEIS DE AMBIENTE:
Modifique assimo arquivo path:
43Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
VERIFIQUE SE O JAVA POSSUI VARIÁVEIS DE AMBIENTE.
Após isto, certifique-se através do commando java –version se o java possui variáveis de ambiente em seu local de trabalho no CMD.
Caso não tenha, realizer o mesmo procedimento já feito para o Maven.
44Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
APÓS ISTO, Veja se tudo ocorreu corretamente digitando “mvn
–version-” no CMD.
45Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
INSIRA O MAVEN ÀS VARIÁVEIS DE AMBIENTE:
Após isto, certifique-se através do commando java –version se o java possui variáveis de ambiente em seu local de trabalho no CMD.
46Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
COM TUDO CONFIGURADO, INSTALAR O MAVEN PARA O ECLIPSE.
No Eclipse, vá em Help -> Eclipse Marketplace, pesquise por M2E e instale o plugin.
47Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
INSTALAR O MAVEN PARA O ECLIPSE.Com o plugin instalado, vá em Window ->
Preferences. Procure em Maven -> Installations -> Add
48Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
INSTALAR O MAVEN PARA O ECLIPSE.Com o plugin instalado, vá em Window ->
Preferences. Procure em Maven -> Installations -> Add
Adicione o diretório onde o Maven está instalado
49Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
USAR O MAVEN NO ECLIPSE.Para criar um projeto maven, cria-se em file -> New
-> Maven Project. Preencha todas as informações necessárias sobre o projeto.
50Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
51Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
Observe como foi construída a estrutura de projeto.
52Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
Target é o ponto alvo de toda a construção feita do seu projeto em processo de build.
53Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
Será visto agora como se dá a configuração básica de um projeto no Maven através do POM.xml.
54Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
55Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
56Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
57Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
58Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
59Introdução a projetos baseados em Apache Maven
4.0. PRIMEIRO PROJETO MAVEN NO ECLIPSE
60Introdução a projetos baseados em Apache Maven
5.0. CONCLUSÃO
Pode-se, através de tudo visto até então, que o Maven é uma poderosa ferramenta que realiza todo o tratamento de um projeto, desde a sua criação e dependências, até seu compartilhamento e empacotamento. Sendo assim, o desenvolvedor pode focar com maior qualidade nos objetivos finais do projeto.
61Introdução a projetos baseados em Apache Maven
5.0. CONCLUSÃO
Caelum. Processo build de com maven[online]. 2008. Referência disponível em http://blog.caelum.com.br/processo-de-build-com-o-maven/;
•Caelum. Sobre builders, Ant e Maven[online].Referência disponível em http://www.caelum.com.br/apostila-java-testes-xml-design-patterns/apendice-o-processo-de-build-ant-e-maven/#10-9-discussao-em-sala-de-aula-ide-ant-ou-maven
• State of the art. Sobre instalação do Maven [online]. Referência disponível em http://luizricardo.org/2014/06/instalando-configurando-e-usando-o-maven-para-gerenciar-suas-dependencias-e-seus-projetos-java/
62Introdução ao Arduino: fundamentos e aplicações de microcontroladores
AGRADECIMENTOS
OBRIGADO!fabiancpbm@gmail.com
top related