JetBrainsがマルチプラットフォーム開発向けに開発するKotlin言語と、そのコンパイラ、標準ライブラリ、ビルドツール。
ingokegel/jclasslib
Javaのクラスファイルを閲覧・編集するバイトコードビューアと、読み書きに使えるKotlin Multiplatformライブラリ。
- スター
- 2,998
- フォーク
- 422
- 未解決の Issue
- 10
- 最終コミット
- 2 か月前
これは何?
jclasslibは、コンパイル済みJavaクラスファイルを調べるためのツールです。定数プール、属性、メソッド、その中のバイトコード命令など、クラスの構造を可視化するため、コンパイラが実際に生成した内容を確認できます。
閲覧だけでなく、定数プールのエントリや個々のバイトコード命令など、クラスファイルの多くの部分をUIから編集できます。複数のクラスファイルやJARファイルを同時に開き、クラスパスをたどって閲覧できるほか、ライトモードとダークモードを切り替えられます。IntelliJ IDEAプラグインを使えば、Java、Groovy、Kotlinのファイルについて、同じビューをIDE内で利用できます。
また、Maven Centralでjclasslib-dataとして公開されているKotlin Multiplatformライブラリも含まれており、ほかのコードからJVMのクラスファイルやバイトコードを読み書きできます。
主な機能
- 01クラスファイルの構造、定数プール、属性、バイトコード命令を可視化
- 02UIから定数プールのエントリやバイトコード命令を編集
- 03複数のクラスファイルやJARファイルを同時に開き、クラスパスを閲覧
- 04IDE内でバイトコードを表示できるIntelliJ IDEAプラグインを提供
- 05クラスファイルを読み書きするKotlin Multiplatformライブラリを提供
ユースケース
- 指定したメソッドやクラスについて、Javaコンパイラが生成した内容を調べる
- バイトコード、定数プール、クラスファイル属性に関する問題をデバッグする
- バイトコードを手動で変更し、JVMの動作を理解する
- jclasslib-dataライブラリを使って、クラスファイルをプログラムから読み書きするツールを構築する
クイックスタート
- 1
Homebrew を使って macOS にビューアをインストールする
brew install jclasslib-bytecode-viewer - 2
リリースページから使用するプラットフォーム用のインストーラーをダウンロードする
- 3
Maven Central から org.jclasslib:jclasslib-data を使って Kotlin ライブラリを追加する
org.jclasslib:jclasslib-data:<version>
使う前に知っておきたいこと
- ライセンスは GPL 2.0 ですが、メタデータでは NOASSERTION と記載されています。ライセンス条項をご自身で確認してください。
- Homebrew によるインストールは macOS でのみ利用できます。それ以外のプラットフォームでは、ダウンロードしたインストーラーを使用してください。
収録されている特集
トピック
よくある質問
- jclasslib とは?
- Javaのクラスファイルを閲覧・編集するバイトコードビューアと、読み書きに使えるKotlin Multiplatformライブラリ。 jclasslibは、コンパイル済みJavaクラスファイルを調べるためのツールです。定数プール、属性、メソッド、その中のバイトコード命令など、クラスの構造を可視化するため、コンパイラが実際に生成した内容を確認できます。
- jclasslib は無料で使えますか?ライセンスは?
- jclasslib は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- jclasslib は今もメンテナンスされていますか?
- 半年以内に更新あり。jclasslib の最終コミットは 2026年8月31日 です。
- jclasslib は何に使えますか?
- 指定したメソッドやクラスについて、Javaコンパイラが生成した内容を調べる バイトコード、定数プール、クラスファイル属性に関する問題をデバッグする バイトコードを手動で変更し、JVMの動作を理解する jclasslib-dataライブラリを使って、クラスファイルをプログラムから読み書きするツールを構築する
- jclasslib のインストール方法は?
- Homebrew を使って macOS にビューアをインストールする: brew install jclasslib-bytecode-viewer リリースページから使用するプラットフォーム用のインストーラーをダウンロードする Maven Central から org.jclasslib:jclasslib-data を使って Kotlin ライブラリを追加する: org.jclasslib:jclasslib-data:<version>
- jclasslib はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/ingokegel/jclasslib
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
jarを展開せずに、内部のクラスファイルやリソースファイルを直接編集できるIntelliJ IDEAプラグイン。
テストで実行されたJavaバイトコードの範囲を測定する、無料のJavaコードカバレッジライブラリです。
稼働中のJavaアプリケーションを再起動せず、非侵襲的なランタイムAOPを追加できるJVMサンドボックスコンテナ。
Java、Kotlin、Androidライブラリをsourcesとjavadoc付きでMaven Centralやその他のNexusリポジトリに公開するGradleプラグインです。
Spigot、Paper、Forge、Fabric、NeoForge、SpongeなどのMinecraft開発に対応するIntelliJ IDEAプラグイン。