Repolode
GradleUp

GradleUp/shadow

Um plugin do Gradle para criar JARs fat/uber, realocar pacotes, transformar arquivos e reduzir o tamanho da saída com R8/ProGuard.

Estrelas
4,243
Forks
427
Issues abertas
11
Último commit
ontem

O que é?

Shadow é um plugin do Gradle que empacota um projeto e suas dependências em um único JAR fat ou uber. É o equivalente do Gradle ao Maven Shade Plugin e atende às necessidades comuns de reunir bibliotecas em um único artefato executável.

Além de combinar dependências, o plugin pode realocar (renomear) pacotes para evitar conflitos no classpath, transformar ou combinar arquivos de recursos durante o empacotamento e otimizar a saída com R8 ou ProGuard. Ele é publicado no Gradle Plugin Portal e no Maven Central com o ID de plugin com.gradleup.shadow, e oferece suporte ao Gradle 8.0 ou posterior. O projeto foi transferido de seu mantenedor original para a organização GradleUp; o antigo ID de plugin com.github.johnrengelman.shadow é usado apenas em builds legados.

Recursos principais

  • 01Cria JARs fat/uber que reúnem as dependências do projeto em um único artefato.
  • 02Realoca pacotes para evitar conflitos no classpath entre bibliotecas.
  • 03Transforma e combina arquivos de recursos durante o empacotamento.
  • 04Otimiza a saída com R8 ou ProGuard.
  • 05Disponível no Gradle Plugin Portal e no Maven Central.

Casos de uso

  • Gerar um único JAR executável para uma aplicação Java ou Kotlin com muitas dependências.
  • Fazer shading de uma biblioteca usando um nome de pacote privado para evitar conflitos com outras versões no classpath.
  • Reduzir o tamanho de um JAR distribuível removendo código não utilizado com R8 ou ProGuard.

Início rápido

  1. 1

    Aplique o plugin com o ID com.gradleup.shadow na sua build do Gradle

  2. 2

    Consulte o User Guide para saber como configurar e usar o plugin

Antes de usar

  • As versões mais recentes exigem Java 17 ou superior e Gradle 9.4 ou superior.

Tópicos

Perguntas frequentes

O que é shadow?
Um plugin do Gradle para criar JARs fat/uber, realocar pacotes, transformar arquivos e reduzir o tamanho da saída com R8/ProGuard. Shadow é um plugin do Gradle que empacota um projeto e suas dependências em um único JAR fat ou uber. É o equivalente do Gradle ao Maven Shade Plugin e atende às necessidades comuns de reunir bibliotecas em um único artefato executável.
shadow é gratuito? Qual é a licença?
shadow é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
shadow ainda é mantido?
Manutenção ativa. O último commit de shadow foi em 6 de nov. de 2026.
Para que posso usar shadow?
Gerar um único JAR executável para uma aplicação Java ou Kotlin com muitas dependências. Fazer shading de uma biblioteca usando um nome de pacote privado para evitar conflitos com outras versões no classpath. Reduzir o tamanho de um JAR distribuível removendo código não utilizado com R8 ou ProGuard.
Como instalar shadow?
Aplique o plugin com o ID com.gradleup.shadow na sua build do Gradle Consulte o User Guide para saber como configurar e usar o plugin
Onde consigo shadow?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/GradleUp/shadow

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados