2 repositorios
Tools that transform compiled Java class files back into human-readable Java source code.
Distinct from Java Decompiler GUIs: Focuses on the core decompilation engine rather than the graphical user interface (GUI).
Explore 2 awesome GitHub repositories matching development tools & productivity · Java Bytecode Decompilers. Refine with filters or upvote what's useful.
Fernflower es un descompilador de bytecode de Java y una herramienta de ingeniería inversa. Transforma archivos de clase de Java compilados de nuevo en código fuente de Java legible por humanos para reconstruir la lógica original del programa y los nombres de las variables. La herramienta funciona como un procesador de bytecode de línea de comandos capaz de procesar por lotes archivos de archivo Java y archivos de clase. Maneja específicamente el análisis de código ofuscado renombrando identificadores ambiguos y resolviendo conflictos de nombres para hacer que el código fuente resultante sea más fácil de seguir. El sistema emplea análisis estático para convertir bytecode a fuente, utilizando la extracción de información de depuración para restaurar los nombres de las variables locales. Reconstruye estructuras de programas a través del análisis de grafos de flujo de control, inferencia de tipos y la generación de un árbol de sintaxis abstracta.
Transforms compiled Java class files back into human-readable Java source code for reverse engineering.
Bistoury es una herramienta de diagnóstico de producción para aplicaciones Java que proporciona una consola de depuración distribuida, un perfilador de rendimiento y un manipulador de bytecode en tiempo real. Permite la depuración de aplicaciones en tiempo real y diagnósticos de producción analizando aplicaciones Java en ejecución mediante instrumentación dinámica e inspección de estado. El sistema se distingue por un gestor de agentes remoto que coordina conexiones de diagnóstico y un manipulador de bytecode en tiempo real capaz de redefinir clases en memoria sin requerir reinicios de proceso. Cuenta con una interfaz web para capturar volcados de memoria (heap dumps), pilas de hilos y variables locales a través de múltiples instancias de servidor, soportado por una capa de comunicación mediada por proxy para enrutar comandos a objetivos remotos. El proyecto cubre una amplia gama de capacidades de observabilidad, incluyendo perfilado de rendimiento de CPU mediante muestreo de pila asíncrono y flame graphs, gestión de logs distribuida a través de múltiples máquinas y captura de estado sin bloqueo utilizando puntos de interrupción condicionales. También incluye utilidades de recuperación de fuente que vinculan el bytecode en tiempo real con el código fuente original mediante descompilación o integración con repositorios Git y Maven. La herramienta proporciona una consola web e interfaces de línea de comandos para gestionar logs, recuperar archivos del sistema e inspeccionar la configuración del sistema y variables de entorno.
Converts compiled Java class files back into human-readable source code when original files are unavailable.