Skip to content

Instantly share code, notes, and snippets.

@andersonbosa
Last active August 5, 2025 19:52
Show Gist options
  • Select an option

  • Save andersonbosa/8edb4926f23b2b091ef3f9422f275bd8 to your computer and use it in GitHub Desktop.

Select an option

Save andersonbosa/8edb4926f23b2b091ef3f9422f275bd8 to your computer and use it in GitHub Desktop.

MAVEN CHEATSHEET AVANÇADO

AJUDA E INFORMAÇÕES

mvn -v

  • Mostra a versão do Maven instalada

mvn help:effective-pom

  • Mostra o POM final após herança e perfis

mvn help:describe -Dplugin=plugin-name

  • Detalha informações de um plugin

CICLO DE VIDA E FASES

  • mvn validate - Checa se o projeto está correto e todas informações disponíveis
  • mvn compile - Compila o código fonte
  • mvn test - Executa testes unitários
  • mvn package - Empacota (gera JAR/WAR/EAR etc)
  • mvn verify - Executa checagens adicionais (ex: integração)
  • mvn install - Instala o artefato no repositório local
  • mvn deploy - Publica o artefato no repositório remoto
  • mvn clean - Remove target/ e arquivos gerados

SKIP TESTS (PULAR TESTES)

mvn install -DskipTests

  • Compila e empacota sem rodar testes (testes são compilados) mvn install -Dmaven.test.skip=true
  • Ignora até compilação dos testes

GERAR DOCUMENTAÇÃO JAVA

mvn javadoc:javadoc

  • Gera a documentação Java do projeto

EXECUTAR UM PROGRAMA JAVA

mvn exec:java -Dexec.mainClass="com.seuprojeto.ClassePrincipal"

Ou com argumentos:

mvn exec:java -Dexec.mainClass="com.seuprojeto.ClassePrincipal" -Dexec.args="arg1 arg2"

DEPENDÊNCIAS

mvn dependency:tree

  • Mostra árvore de dependências

mvn dependency:analyze

  • Mostra dependências usadas vs declaradas

mvn dependency:purge-local-repository

  • Limpa dependências do repositório local

ATUALIZAR DEPENDÊNCIAS

mvn versions:display-dependency-updates

  • Mostra updates disponíveis das dependências

mvn versions:display-plugin-updates

  • Mostra updates de plugins

PERFIS (PROFILES)

mvn install -Pmeuperfil

  • Ativa um profile definido no pom.xml

PLUGINS MAIS USADOS

Limpar pasta target

mvn clean

Empacotar com dependências (ex: jar ‘fat’/uber):

mvn package assembly:single

Gerar relatório de cobertura de testes (JaCoCo plugin):

mvn test jacoco:report

OUTROS

mvn archetype:generate

  • Gera um novo projeto Maven (wizard)

mvn site

  • Gera site do projeto (resumo, dependências, etc.)

mvn install -U

  • Força update das dependências do repositório remoto

mvn test -Dtest=MinhaClasseDeTeste

  • Executa apenas uma classe de teste específica

mvn surefire-report:report

  • Gera relatório dos testes (Surefire plugin)

BUILDS PARA AMBIENTES DIFERENTES

Ativando vários perfis

mvn clean install -Pdev,qa,homologacao

DICAS

  • Use -X para output de debug verbose em build: mvn clean install -X
  • Use -e para mostrar stacktrace de erros: mvn install -e
  • Adicione -T 4 ou -T 1C para builds em paralelo: mvn clean install -T 4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment