Repolode
ingokegel

ingokegel/jclasslib

Просмотр и редактирование байткода Java-классов, а также Kotlin Multiplatform-библиотека для чтения и записи class-файлов.

Звёзды
2,996
Форки
422
Открытые issues
10
Последний коммит
2 месяца назад

Что это?

jclasslib — инструмент для анализа скомпилированных Java-классов. Он наглядно показывает структуру класса, включая constant pool, атрибуты, методы и содержащиеся в них инструкции байткода — так разработчики могут увидеть, что именно сгенерировал компилятор.

В интерфейсе можно не только просматривать, но и редактировать многие части class-файла, в том числе записи constant pool и отдельные инструкции байткода. Можно одновременно открыть несколько class- или JAR-файлов, просматривать classpath и переключаться между светлой и тёмной темами. Плагин для IntelliJ IDEA добавляет такой же просмотр прямо в IDE для файлов Java, Groovy и Kotlin.

В проект также входит Kotlin Multiplatform-библиотека jclasslib-data, опубликованная в Maven Central. Она позволяет другим программам читать и записывать JVM class-файлы и байткод.

Ключевые возможности

  • 01Показывает структуру class-файла, constant pool, атрибуты и инструкции байткода
  • 02Позволяет редактировать записи constant pool и инструкции байткода в интерфейсе
  • 03Открывает несколько class- или JAR-файлов одновременно и позволяет просматривать classpath
  • 04Предоставляет плагин для IntelliJ IDEA, чтобы просматривать байткод в IDE
  • 05Предлагает Kotlin Multiplatform-библиотеку для чтения и записи class-файлов

Сценарии использования

  • Проверка того, что Java-компилятор сгенерировал для конкретного метода или класса
  • Поиск причин проблем, связанных с байткодом, constant pool или атрибутами class-файла
  • Эксперименты с вручную изменённым байткодом, чтобы разобраться в поведении JVM
  • Создание инструментов для программного чтения и записи class-файлов с помощью библиотеки jclasslib-data

Быстрый старт

  1. 1

    Установите программу просмотра в macOS с помощью Homebrew

    brew install jclasslib-bytecode-viewer
  2. 2

    Скачайте установщик для своей платформы со страницы релизов

  3. 3

    Добавьте библиотеку Kotlin из Maven Central, используя org.jclasslib:jclasslib-data

    org.jclasslib:jclasslib-data:<version>

Что важно знать

  • Лицензия — GPL 2.0, но в метаданных указано NOASSERTION. Ознакомьтесь с условиями лицензии самостоятельно.
  • Установка через Homebrew доступна только в macOS; на остальных платформах используйте скачанные установщики.

В подборках

Темы

Частые вопросы

Что такое jclasslib?
Просмотр и редактирование байткода Java-классов, а также Kotlin Multiplatform-библиотека для чтения и записи class-файлов. jclasslib — инструмент для анализа скомпилированных Java-классов. Он наглядно показывает структуру класса, включая constant pool, атрибуты, методы и содержащиеся в них инструкции байткода — так разработчики могут увидеть, что именно сгенерировал компилятор.
jclasslib можно использовать бесплатно? Какая у него лицензия?
jclasslib распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
jclasslib всё ещё поддерживается?
Обновлялся за последние 6 месяцев. Последний коммит в jclasslib — 31 авг. 2026 г..
Для чего можно использовать jclasslib?
Проверка того, что Java-компилятор сгенерировал для конкретного метода или класса Поиск причин проблем, связанных с байткодом, constant pool или атрибутами class-файла Эксперименты с вручную изменённым байткодом, чтобы разобраться в поведении JVM Создание инструментов для программного чтения и записи class-файлов с помощью библиотеки jclasslib-data
Как установить jclasslib?
Установите программу просмотра в macOS с помощью Homebrew: brew install jclasslib-bytecode-viewer Скачайте установщик для своей платформы со страницы релизов Добавьте библиотеку Kotlin из Maven Central, используя org.jclasslib:jclasslib-data: org.jclasslib:jclasslib-data:<version>
Где скачать jclasslib?
Исходный код и инструкции по установке — на GitHub: https://github.com/ingokegel/jclasslib

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Язык программирования Kotlin, его компилятор, стандартная библиотека и инструменты сборки для кроссплатформенной разработки, создаваемые JetBrains.

53,5 тыс.+13 за неделю6,5 тыс.KotlinБез лицензииОбновлён 14 часов назад

Контейнер-песочница для JVM, который добавляет работающим Java-приложениям ненавязчивый AOP во время выполнения без перезапуска.

DevOps и облака#java#jvm#aop
7 тыс.+2 за неделю1,6 тыс.JavaLGPL-3.0Обновлён 2 месяца назад