6 repository-uri
Tools used to inspect and analyze the internal structure of compiled Java class files.
Distinct from Java Bytecode Viewers: None of the candidates cover the identity of a tool that both modifies and analyzes bytecode via abstractions.
Explore 6 awesome GitHub repositories matching development tools & productivity · Java Bytecode Analysis Tools. Refine with filters or upvote what's useful.
Recaf este o suită de instrumente specializate pentru asamblarea, editarea, deobfuscare, decompilarea și instrumentarea bytecode-ului Java și a proceselor de runtime. Oferă un mediu coordonat pentru modificarea fișierelor de clasă Java compilate și analizarea comportamentului aplicațiilor Java. Proiectul se distinge printr-un strat de abstractizare pe mai multe niveluri care permite editarea în diferite formate și un framework pluggable care rutează bytecode-ul prin mai multe motoare de decompilare configurabile. Include un motor de scripting încorporat și o arhitectură de plugin-uri pentru a automatiza sarcinile repetitive și a extinde comportamentul sistemului. Setul de instrumente acoperă mai multe domenii de capabilități de nivel înalt, inclusiv analiză statică pentru căutarea conținutului aplicației și simularea stărilor de execuție a metodelor. De asemenea, suportă instrumentarea runtime pentru atașarea la procese live și transformarea automată a bytecode-ului pentru eliminarea obfuscării și repararea fișierelor de clasă. Execuția headless este suportată printr-o interfață de linie de comandă pentru a integra fluxurile de lucru în pipeline-uri de build externe.
A specialized tool for modifying and analyzing compiled Java class files across multiple abstraction levels.
Luyten este un decompiler Java open source și un analizor de bytecode conceput pentru a transforma fișierele class compilate înapoi în cod sursă de nivel înalt. Funcționează ca o interfață grafică pentru motorul de decompilare Procyon, permițând inspecția și recuperarea logicii programului din bytecode-ul Java. Instrumentul oferă capabilități pentru ingineria inversă Java și analiza codului legacy, permițând examinarea aplicațiilor sau bibliotecilor terțe atunci când codul sursă original nu este disponibil. Sistemul include o interfață desktop pentru navigarea ierarhiilor de clase, scanarea recursivă a classpath-ului pentru a indexa fișierele JAR și un istoric de navigare cu stare pentru a urmări clasele vizitate.
Integrates the Procyon engine to translate compiled Java bytecode into high-level source code structures for analysis.
Acest proiect este o bază de cunoștințe cuprinzătoare de programare Java și un depozit de referință tehnică. Oferă o colecție curată de răspunsuri distilate, documentație API și ghiduri de depanare concepute pentru a ajuta dezvoltatorii să rezolve provocările comune de codare și capcanele limbajului. Depozitul se remarcă printr-o abordare arhitecturală structurată a cunoștințelor, utilizând analiza centrată pe comparație pentru a evidenția compromisurile între diferite implementări de biblioteci și caracteristici ale limbajului. Acesta agregă discuțiile comunității cu impact ridicat într-un format standardizat, organizând soluțiile tehnice pe tipare arhitecturale, de concurență și de securitate. Conținutul acoperă o gamă largă de domenii tehnice, inclusiv specificațiile de bază ale limbajului, gestionarea concurenței, gestionarea memoriei și tiparele de design software. Include, de asemenea, îndrumări privind depanarea runtime-ului, implementarea structurilor de date, reflexia și metadatele, precum și tiparele de integrare API. Documentația servește ca referință tehnică pentru implementarea tiparelor standard de arhitectură software și rezolvarea problemelor de configurare a mediului.
Explains how to translate compiled bytecode back into human-readable source code to inspect binary files.
This project is an instructional repository and learning resource providing a comprehensive collection of study notes, programming guides, and runnable source code examples. It serves as a guide for Java SE and Java web development, featuring a library of code samples that demonstrate common algorithms and technical implementations. The repository focuses on language core and runtime analysis, with detailed tutorials on multithreading and concurrency. It provides practical implementations of software architecture and design patterns, such as the singleton and strategy patterns, as well as exp
Explores the inner workings of the JVM and bytecode using reflection and dynamic proxy generation.
Bistoury is a production diagnostics tool for Java applications that provides a distributed debugging console, a performance profiler, and a runtime bytecode manipulator. It enables real-time application debugging and production diagnostics by analyzing running Java applications through dynamic instrumentation and state inspection. The system distinguishes itself through a remote agent manager that coordinates diagnostic connections and a runtime bytecode manipulator capable of redefining classes in memory without requiring process restarts. It features a web interface for capturing heap dump
Collects operational data, system properties, and machine metrics to analyze the overall health of the JVM.
SpotBugs este un instrument de analiză statică și un analizor de bytecode pentru aplicații Java. Acesta scanează fișierele de clasă compilate pentru a identifica bug-uri, vulnerabilități de securitate și probleme de performanță fără a executa codul. Sistemul funcționează atât ca un detector de bug-uri, cât și ca un instrument de testare statică a securității aplicațiilor pentru a localiza erori logice și utilizarea greșită a API-urilor. Proiectul se distinge printr-o arhitectură de detectare bazată pe plugin-uri care permite integrarea bibliotecilor externe pentru a adăuga reguli de detectare personalizate. Oferă audit de securitate specializat pentru vulnerabilități precum SQL injection, cross-site scripting și path traversal, alături de un sistem modular pentru rafinarea preciziei analizei și reducerea rezultatelor fals pozitive. Instrumentul acoperă o gamă largă de zone de detectare, inclusiv erori de sincronizare a concurenței, dereferențieri de pointeri nuli, scurgeri de resurse și erori de type casting. De asemenea, identifică codul mort, ineficiențele de performanță și încălcările idiomurilor de serializare. Aceste capabilități sunt accesibile printr-o interfață de linie de comandă, o interfață grafică și integrare directă în mediile de dezvoltare integrate (IDE). SpotBugs poate fi integrat în pipeline-urile de build pentru a impune porți de calitate și a genera rapoarte de analiză în formate HTML sau XML.
Scans compiled Java class files to identify bug patterns without executing the application code.