X Bemobi Tech Tal k
Maven
Di ego Magal hães 22/ 02/ 2013
Definição
 Mais do que uma simples ferramenta de build
 Promove convention over configuration
 Hierárquico (≠ ANT)
Bemo...
POM e Artefatos
 Planta do seu build, todas as configurações
 Geração de um ou mais artefatos por build (Normalmente um)...
POM e Artefatos
 Herança através de um SUPER POM (Parent POM)
 Definição de bibliotecas atrás de dependencyManagement
 ...
Build dos seus projetos
 Goal é uma única ação
 Cada Phase é uma coleção de Goals
 O ciclo de vida do maven é composto ...
Archetypes
 Templates de projetos
 Use um ou construa a partir de mvn archetype:create-from-project
 Acaba com a bagunç...
Dependências
 São guardadas em repositórios (local – mvn install ou remoto – mvn deploy)
 Referências a repositórios pod...
Dependências
 Use *Management (DependencyManagement, PluginManagement etc)
 Herança de versões de bibliotecas e plugins
...
Integração com SCM
 mvn release:prepare
• versões em todos os poms perdem o sufixo “-SNAPSHOT”
• cria a tag no SCM da ver...
Integração com SCM
 mvn release:prepare – versões em todos os poms perdem o sufixo “-
SNAPSHOT”, cria a tag no SCM da ver...
Rodando sua aplicação
 Rodar qualquer main class de java ou ferramenta externa
• mvn exec:java –Dexec.mainClass=“com.bemo...
Integrando com legado
 Suporta integração com ANT
 Mvn ant:ant
• build.xml
• maven-build.xml
• maven-build.properties
 ...
Sites e Relatórios
 Site com changelogs, notas, javadoc e outros relatórios
 Não existe mais seção reporting (maven 2), ...
Dúvidas?
Bemobi Tech Tal k Dat a: 09/11/2012
Fim
Bemobi Tech Tal k Dat a: 09/11/2012
Próximos SlideShares
Carregando em…5
×

X Bemobi Tech Talk - Maven

358 visualizações

Publicada em

Visão geral sobre Maven 3 os desenvolvedores da BeMobi

Publicada em: Tecnologia
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
358
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
3
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

X Bemobi Tech Talk - Maven

  1. 1. X Bemobi Tech Tal k Maven Di ego Magal hães 22/ 02/ 2013
  2. 2. Definição  Mais do que uma simples ferramenta de build  Promove convention over configuration  Hierárquico (≠ ANT) Bemobi Tech Tal k Dat a: 09/11/2012
  3. 3. POM e Artefatos  Planta do seu build, todas as configurações  Geração de um ou mais artefatos por build (Normalmente um)  Identificação via artifactId, groupId e versão  Versões “-SNAPSHOT”  Artefatos são guardados em repositórios locais/remotos Bemobi Tech Tal k Dat a: 09/11/2012
  4. 4. POM e Artefatos  Herança através de um SUPER POM (Parent POM)  Definição de bibliotecas atrás de dependencyManagement  Definição de regras, reporters e formatadores  Perfis de execução Bemobi Tech Tal k Dat a: 09/11/2012
  5. 5. Build dos seus projetos  Goal é uma única ação  Cada Phase é uma coleção de Goals  O ciclo de vida do maven é composto por uma sequência de Phases  Plugins disponibilizam seus próprios Goals, que por sua vez podem ser incluidos em Phases Bemobi Tech Tal k Dat a: 09/11/2012
  6. 6. Archetypes  Templates de projetos  Use um ou construa a partir de mvn archetype:create-from-project  Acaba com a bagunça do ctrl+c e ctrl+v dos “projetos base” Bemobi Tech Tal k Dat a: 09/11/2012
  7. 7. Dependências  São guardadas em repositórios (local – mvn install ou remoto – mvn deploy)  Referências a repositórios podem estar no POM ou no settings.xml  Como o maven resolve qual dependência usar? A mais próxima! Bemobi Tech Tal k Dat a: 09/11/2012 1 2 3 4
  8. 8. Dependências  Use *Management (DependencyManagement, PluginManagement etc)  Herança de versões de bibliotecas e plugins Bemobi Tech Tal k Dat a: 09/11/2012 Parent Pom Pom dos projetos filhos
  9. 9. Integração com SCM  mvn release:prepare • versões em todos os poms perdem o sufixo “-SNAPSHOT” • cria a tag no SCM da versão  mvn release:perform • Faz o deploy da tag no svn • mvn deploy • atualiza os POMs para a próxima versão de desenvolvimento (Snapshot) Bemobi Tech Tal k Dat a: 09/11/2012
  10. 10. Integração com SCM  mvn release:prepare – versões em todos os poms perdem o sufixo “- SNAPSHOT”, cria a tag no SCM da versão  mvn release:perform– Faz o deploy da tag no svn, mvn deploy e atualiza os POMs para a próxima versão de desenvolvimento (Snapshot) Bemobi Tech Tal k Dat a: 09/11/2012
  11. 11. Rodando sua aplicação  Rodar qualquer main class de java ou ferramenta externa • mvn exec:java –Dexec.mainClass=“com.bemobi.teste”  Cria um ambiente de classpath a partir das dependencias do projeto  Usamos para testes (jetty:run) Bemobi Tech Tal k Dat a: 09/11/2012
  12. 12. Integrando com legado  Suporta integração com ANT  Mvn ant:ant • build.xml • maven-build.xml • maven-build.properties  Ideal para fazer coisas arbitrária no ciclo do maven (copiar arquivos, gerar output no console etc) Bemobi Tech Tal k Dat a: 09/11/2012
  13. 13. Sites e Relatórios  Site com changelogs, notas, javadoc e outros relatórios  Não existe mais seção reporting (maven 2), agora plugins geram relatórios • Javadoc • Java XRef • Tag List • Project Info • Check Style • Surefire • PMD • FindBugs • Sonar • Cobertura • Versions Bemobi Tech Tal k Dat a: 09/11/2012
  14. 14. Dúvidas? Bemobi Tech Tal k Dat a: 09/11/2012
  15. 15. Fim Bemobi Tech Tal k Dat a: 09/11/2012

×