Repolode
ingokegel

ingokegel/jclasslib

Visualizador e editor de bytecode para arquivos de classe Java, além de uma biblioteca Kotlin Multiplatform para lê-los e gravá-los.

Estrelas
2,996
Forks
422
Issues abertas
10
Último commit
há 2 meses

O que é?

jclasslib é uma ferramenta para inspecionar arquivos de classe Java compilados. Ela visualiza a estrutura de uma classe, incluindo o constant pool, os atributos, os métodos e as instruções de bytecode contidas neles, para que desenvolvedores possam ver o que o compilador realmente gerou.

Além de visualizar, é possível editar várias partes de um arquivo de classe pela interface, incluindo entradas do constant pool e instruções de bytecode individuais. Você pode abrir vários arquivos de classe ou JAR ao mesmo tempo, navegar por um classpath e alternar entre os modos claro e escuro. Um plugin para IntelliJ IDEA leva a mesma visualização para a IDE em arquivos Java, Groovy e Kotlin.

O projeto também inclui uma biblioteca Kotlin Multiplatform, publicada no Maven Central como jclasslib-data, que permite que outros códigos leiam e gravem arquivos de classe e bytecode da JVM.

Recursos principais

  • 01Visualiza a estrutura do arquivo de classe, o constant pool, os atributos e as instruções de bytecode
  • 02Edita entradas do constant pool e instruções de bytecode pela interface
  • 03Abre vários arquivos de classe ou JAR ao mesmo tempo e permite navegar pelo classpath
  • 04Oferece um plugin para IntelliJ IDEA para visualizar bytecode na IDE
  • 05Oferece uma biblioteca Kotlin Multiplatform para ler e gravar arquivos de classe

Casos de uso

  • Inspecionar o que o compilador Java gerou para um determinado método ou classe
  • Depurar problemas relacionados a bytecode, constant pool ou atributos de arquivos de classe
  • Experimentar com bytecode modificado manualmente para entender o comportamento da JVM
  • Criar ferramentas que leem ou gravam arquivos de classe programaticamente usando a biblioteca jclasslib-data

Início rápido

  1. 1

    Instale o visualizador no macOS com Homebrew

    brew install jclasslib-bytecode-viewer
  2. 2

    Baixe o instalador para sua plataforma na página de lançamentos

  3. 3

    Adicione a biblioteca Kotlin do Maven Central usando org.jclasslib:jclasslib-data

    org.jclasslib:jclasslib-data:<version>

Antes de usar

  • A licença é GPL 2.0, mas os metadados a indicam como NOASSERTION. Confira os termos da licença por conta própria.
  • A instalação pelo Homebrew está disponível apenas no macOS; nas demais plataformas, use os instaladores baixados.

Em coleções

Tópicos

Perguntas frequentes

O que é jclasslib?
Visualizador e editor de bytecode para arquivos de classe Java, além de uma biblioteca Kotlin Multiplatform para lê-los e gravá-los. jclasslib é uma ferramenta para inspecionar arquivos de classe Java compilados. Ela visualiza a estrutura de uma classe, incluindo o constant pool, os atributos, os métodos e as instruções de bytecode contidas neles, para que desenvolvedores possam ver o que o compilador realmente gerou.
jclasslib é gratuito? Qual é a licença?
jclasslib é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
jclasslib ainda é mantido?
Atualizado nos últimos 6 meses. O último commit de jclasslib foi em 31 de ago. de 2026.
Para que posso usar jclasslib?
Inspecionar o que o compilador Java gerou para um determinado método ou classe Depurar problemas relacionados a bytecode, constant pool ou atributos de arquivos de classe Experimentar com bytecode modificado manualmente para entender o comportamento da JVM Criar ferramentas que leem ou gravam arquivos de classe programaticamente usando a biblioteca jclasslib-data
Como instalar jclasslib?
Instale o visualizador no macOS com Homebrew: brew install jclasslib-bytecode-viewer Baixe o instalador para sua plataforma na página de lançamentos Adicione a biblioteca Kotlin do Maven Central usando org.jclasslib:jclasslib-data: org.jclasslib:jclasslib-data:<version>
Onde consigo jclasslib?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/ingokegel/jclasslib

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados

Um contêiner de sandbox para JVM que adiciona AOP não invasivo em tempo de execução a aplicações Java em execução, sem reiniciá-las.

DevOps e nuvem#java#jvm#aop
7 mil+2 esta semana1,6 milJavaLGPL-3.0Atualizado há 2 meses