問題タブ [jvm-bytecode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
36 参照

jvm - JVM ClassFile で attribute_info を区別するにはどうすればよいですか?

The ClassFileStructureを掘り下げています。

上記の資料によると、attribute_info様々な体位で登場する可能性があります。

私の質問は、どうすればattribute_infos のタイプを区別できますか?

constant_infos を s で区別できることを知っていtagます。

そして、どうすればattribute_infosを区別できますか?

全部attribute_infoこんな感じ。

フィールドattribute_infoには、などConstantValueSyntheticあります。

それらのタイプをどのように区別できますか?

0 投票する
1 に答える
658 参照

java - メソッドのバイトコード サイズを計算する

現在、 ASM ライブラリを使用してカスタム ソフトウェア メトリック ツールを実装しています。このライブラリを介してメソッドのサイズを計算する唯一の方法は、命令の訪問ごとにサイズ変数を手動でインクリメントすることです。メソッドのバイトコードサイズを計算する別の一般的な方法はありますか? または、命令ごとのサイズ計算は十分に合理的ですか?

0 投票する
1 に答える
1635 参照

java - ASM を使用して定数プールを変更する方法

この投稿から、ASM を使用して実行時にクラスを操作する方法を既に理解しています。

しかし、定数プールを変更する方法についてさらに質問があります。以下は、変更したいサンプルJavaプログラムです

主な jar ファイル:

a変数を"Hello World"~に変更したい"Multiply Of x*y is: "

私のエージェントクラス

コンソール ウィンドウの結果は