3 repository-uri
Tools that modify the structure and instructions of compiled bytecode to achieve specific functional goals.
Distinct from Bytecode Converters: Distinct from Bytecode Converters which typically change VM formats; transformers modify instructions within a format.
Explore 3 awesome GitHub repositories matching development tools & productivity · Bytecode Transformers. Refine with filters or upvote what's useful.
gradle-retrolambda este un plugin Gradle și un transformator de bytecode conceput pentru a permite utilizarea expresiilor lambda moderne din Java în medii de runtime Java și Android mai vechi. Acesta funcționează ca un instrument de backporting care asigură compatibilitatea sintaxei moderne de programare funcțională cu mașinile virtuale mai vechi. Proiectul transformă fișierele class compilate pentru a le face compatibile cu mediile Java 6 și 7. Acest lucru permite utilizarea funcționalităților Java moderne în proiecte care trebuie să mențină compatibilitatea cu versiuni API mai vechi și dispozitive Android legacy. Instrumentul se integrează în procesul de automatizare a build-ului Gradle, aplicând transformări post-compilare pentru a modifica output-ul binar. Utilizează desugaring la nivel de bytecode pentru a converti expresiile lambda în clase interne anonime și generează bridge-uri de runtime compatibile.
Gradle plugin that converts Java lambda expressions into bytecode compatible with Java 6 and 7 environments.
cglib is a suite of tools for JVM bytecode generation, class transformation, and dynamic proxying. It provides a high-level API for creating and transforming Java bytecode at runtime to modify class behavior and a framework for intercepting method calls and field access. The project implements dynamic proxy generation to support aspect oriented programming and custom data access patterns. It also includes a serialization manager to implement serialization contracts by adding specific methods and controlling object replacement within proxy classes. The library covers bytecode manipulation and
Modifies the structure and instructions of compiled bytecode to change behavior before classes load.
Acest proiect este un plugin de build Gradle pentru Android conceput pentru a automatiza crearea de pachete de aplicații specifice fiecărui canal dintr-un singur proces de build. Acesta funcționează ca un generator de variante APK care injectează identificatori de distribuție unici în pachetele aplicației pentru a urmări sursele de instalare în diferite magazine de aplicații. Instrumentul gestionează întregul ciclu de viață al distribuției, de la definirea canalelor țintă prin configurare externă până la generarea variantelor de pachete corespunzătoare. Utilizează denumirea artefactelor bazată pe șabloane cu placeholder-e dinamice pentru a organiza fișierele de output și include un sistem pentru încărcarea binarilor semnați și a metadatelor în repository-uri Maven la distanță prin endpoint-uri de release și snapshot. Plugin-ul gestionează transformările pachetelor post-build pentru a încorpora marcatori de distribuție fără a necesita o recompilare completă. De asemenea, oferă capabilități pentru identificarea runtime a canalului pentru a declanșa comportamente specifice mediului, precum și utilitare de validare pentru a verifica dacă etichetele de canal corecte au fost încorporate în timpul build-ului.
Modifies compiled application files after the build to embed metadata without requiring a full recompilation.