Herramientas de línea de comandos y GUI para descompilar archivos Android Dex, APK y otros formatos y obtener código fuente Java legible.
Col-E/Recaf
Editor de bytecode para Java y Android con una interfaz similar a la de un IDE, que permite descompilar, editar, desofuscar y exportar aplicaciones compiladas.
- Estrellas
- 7,455
- Forks
- 548
- Issues abiertos
- 61
- Último commit
- hace 4 días
¿Qué es?
Recaf es un editor de bytecode para aplicaciones compiladas de Java y Android. Permite abrir un JAR sin el código fuente original, explorar las clases con una interfaz similar a la de un IDE, editar código desde el código fuente descompilado o el nivel de ensamblador de bytecode y exportar la aplicación modificada.
La vista del descompilador es compatible con CFR, Procyon y Fernflower, y la búsqueda abarca cadenas, constantes, referencias a clases, métodos y patrones de instrucciones de bytecode. Recaf también incluye herramientas para analizar código ofuscado, como transformadores de bytecode para constantes opacas y predicados, renombrado masivo basado en patrones y exportación de mappings para otras herramientas.
El proyecto ofrece una API de scripting y un modo CLI sin interfaz gráfica para automatizar flujos de análisis; además, se puede compilar con Gradle o abrir en un IDE.
Funciones clave
- 01Descompila con CFR, Procyon o Fernflower y permite editar directamente el código fuente Java resultante.
- 02Usa un ensamblador de bytecode con nombres de variables, avisos de sintaxis y visualización del flujo de control.
- 03Busca cadenas, constantes, referencias a clases, métodos y patrones de instrucciones.
- 04Aplica transformadores de bytecode y renombrado basado en patrones para desofuscar aplicaciones.
- 05Automatiza flujos de trabajo con scripts ejecutados desde la línea de comandos.
Casos de uso
- Inspeccionar una aplicación Java o Android cuando no se dispone del código fuente.
- Modificar una clase de biblioteca que falta en un JAR mediante la generación de código esqueleto.
- Analizar y desofuscar aplicaciones Java protegidas u ofuscadas.
- Automatizar tareas repetitivas de ingeniería inversa en modo sin interfaz gráfica.
Inicio rápido
- 1
Clona el repositorio
git clone https://github.com/Col-E/Recaf.git - 2
Compila el proyecto con Gradle
gradlew build - 3
Ejecuta el jar compilado desde recaf-ui/build/libs
Antes de usarlo
- Para configurar el entorno de desarrollo, es necesario compilar desde el código fuente con Gradle o un IDE.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es Recaf?
- Editor de bytecode para Java y Android con una interfaz similar a la de un IDE, que permite descompilar, editar, desofuscar y exportar aplicaciones compiladas. Recaf es un editor de bytecode para aplicaciones compiladas de Java y Android. Permite abrir un JAR sin el código fuente original, explorar las clases con una interfaz similar a la de un IDE, editar código desde el código fuente descompilado o el nivel de ensamblador de bytecode y exportar la aplicación modificada.
- ¿Recaf es gratuito? ¿Qué licencia tiene?
- Recaf es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿Recaf sigue mantenido?
- Mantenimiento activo. El último commit de Recaf fue el 2 nov 2026.
- ¿Para qué puedo usar Recaf?
- Inspeccionar una aplicación Java o Android cuando no se dispone del código fuente. Modificar una clase de biblioteca que falta en un JAR mediante la generación de código esqueleto. Analizar y desofuscar aplicaciones Java protegidas u ofuscadas. Automatizar tareas repetitivas de ingeniería inversa en modo sin interfaz gráfica.
- ¿Cómo se instala Recaf?
- Clona el repositorio: git clone https://github.com/Col-E/Recaf.git Compila el proyecto con Gradle: gradlew build Ejecuta el jar compilado desde recaf-ui/build/libs
- ¿Dónde consigo Recaf?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Col-E/Recaf
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Herramienta de línea de comandos para aplicar ingeniería inversa a APK de Android cerrados, decodificar sus recursos casi a su forma original y volver a compilarlos tras modificarlos.
Un plugin de JADX y un servidor MCP en Python que permite a LLM como Claude analizar APK de Android descompilados desde la interfaz de JADX.
Plugin de IntelliJ IDEA para editar directamente archivos de clase y recursos dentro de un jar, sin extraerlo.
Explorador y descompilador de ensamblados .NET, de código abierto y multiplataforma, que convierte binarios .NET compilados en código C# legible.
Continuación no oficial de dnSpy, un depurador y editor de ensamblados .NET y Unity que funciona sin código fuente.