Repolode
GradleUp

GradleUp/shadow

Un plugin de Gradle que crea JARs fat/uber, reubica paquetes, transforma archivos y puede reducir el tamaño del resultado con R8/ProGuard.

Estrellas
4,245
Forks
427
Issues abiertos
11
Último commit
hace 13 horas

¿Qué es?

Shadow es un plugin de Gradle para empaquetar un proyecto y sus dependencias en un único JAR fat o uber. Es el equivalente en Gradle del Maven Shade Plugin y cubre las necesidades habituales para agrupar bibliotecas en un único artefacto ejecutable.

Además de combinar dependencias, el plugin puede reubicar (cambiar el nombre de) paquetes para evitar conflictos en el classpath, transformar o combinar archivos de recursos durante el empaquetado y optimizar el resultado con R8 o ProGuard. Se publica en Gradle Plugin Portal y Maven Central con el ID de plugin com.gradleup.shadow, y es compatible con Gradle 8.0 y versiones posteriores. El proyecto pasó a la organización GradleUp desde su mantenedor original y solo usa el ID de plugin antiguo com.github.johnrengelman.shadow en compilaciones heredadas.

Funciones clave

  • 01Crea JARs fat/uber que agrupan las dependencias del proyecto en un único artefacto.
  • 02Reubica paquetes para evitar conflictos en el classpath entre bibliotecas.
  • 03Transforma y combina archivos de recursos durante el empaquetado.
  • 04Optimiza el resultado con R8 o ProGuard.
  • 05Está disponible en Gradle Plugin Portal y Maven Central.

Casos de uso

  • Generar un único JAR ejecutable para una aplicación Java o Kotlin con muchas dependencias.
  • Reubicar una biblioteca bajo un nombre de paquete privado para evitar conflictos con otras versiones presentes en el classpath.
  • Reducir el tamaño de un JAR distribuible eliminando código no utilizado con R8 o ProGuard.

Inicio rápido

  1. 1

    Aplica en tu compilación de Gradle el plugin con el ID com.gradleup.shadow

  2. 2

    Consulta la User Guide para ver cómo configurarlo y usarlo

Antes de usarlo

  • Las versiones más recientes requieren Java 17 o posterior y Gradle 9.4 o posterior.

Temas

Preguntas frecuentes

¿Qué es shadow?
Un plugin de Gradle que crea JARs fat/uber, reubica paquetes, transforma archivos y puede reducir el tamaño del resultado con R8/ProGuard. Shadow es un plugin de Gradle para empaquetar un proyecto y sus dependencias en un único JAR fat o uber. Es el equivalente en Gradle del Maven Shade Plugin y cubre las necesidades habituales para agrupar bibliotecas en un único artefacto ejecutable.
¿shadow es gratuito? ¿Qué licencia tiene?
shadow es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿shadow sigue mantenido?
Mantenimiento activo. El último commit de shadow fue el 7 nov 2026.
¿Para qué puedo usar shadow?
Generar un único JAR ejecutable para una aplicación Java o Kotlin con muchas dependencias. Reubicar una biblioteca bajo un nombre de paquete privado para evitar conflictos con otras versiones presentes en el classpath. Reducir el tamaño de un JAR distribuible eliminando código no utilizado con R8 o ProGuard.
¿Cómo se instala shadow?
Aplica en tu compilación de Gradle el plugin con el ID com.gradleup.shadow Consulta la User Guide para ver cómo configurarlo y usarlo
¿Dónde consigo shadow?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/GradleUp/shadow

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados