問題タブ [bcel]
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.
java - Java - メソッド内の何かを取得する方法
私が知っていることから、Javaはメソッド内で何も取得できません。そのため、javac でオプション -g または -g:vars を使用しています。
例:
そこで、BCEL を使用してローカル変数を取得します。
ただし、変数が のように初期化されていないと機能しませんString b
。さらに、コンストラクターの呼び出しnew Thread()
やnew File()
、静的メソッドの呼び出しを追跡したり、内部で初期化したりしJFileChooser
たいnew File
と考えていJOptionPane
ます。Thread
だから私は出力で見たいString b
, JOptionPane
, ImageIO
, とFile
.
プログラムでそれらを印刷するにはどうすればよいですか?
java - BCEL を使用した Java クラスの変更順序
Java ライブラリ (私の場合はbcel ) が他のコードを変更するのはいつですか?
これは、問題のクラスがクラスローダーのブートストラップ プロセスによってロードされる前または後に発生しますか?
bytecode - Java バイトコード操作ライブラリ
私はプロジェクトに取り組み始めており、タスクの 1 つで、クラスとそのメソッドに関する情報を収集するためにソース コードを分析する必要があります。より具体的には、メソッドごとに、メソッド本体全体でどの内部属性と外部オブジェクト (参照) を使用するかを知る必要があります。
スーパーバイザーと話し合いましたが、彼らはバイトコード操作ライブラリーが進むべき道だと考えています。BCEL、ASM、Javassist については既に調べましたが、どれを使用すればよいかわかりません。それらはすべて、すべての命令を表示して必要な情報を取得できるメソッド本体へのアクセスを提供しますか?
アドバイスをいただければ幸いです。ありがとうございました!
java - 通常のクラス(java.lang.class )オブジェクトからjavaclass(org.apache.bcel.classfile.JavaClass)を取得するにはどうすればよいですか
クラス オブジェクト (`java lang`) にクラス ロードできる .class ファイルがあります。クラス オブジェクトを BCEL 中間 Java クラス ( org.apache.bcel.classfile.JavaClass
) オブジェクトに変換する必要があります。どうすればいいですか?
bcel - 別の Java クラスを使用する Java クラスからコードを生成する (BCEL)
ByteCode Engineering Library (by Apache) を使用して、別のクラスから出力クラスのコードを生成 (および変更) しようとしています。
そのため、すべてのメソッドに対して ClassName から printSomething を呼び出そうとしています。問題は、実際に文字列引数をメソッド printSomething に渡す方法がわからないことです。
java - BCel オンザフライでメソッドにパッチを適用しても機能しない
BCEL を使用して Java メソッドにコールバックを挿入しようとしていますが、コールバックが呼び出されません。プログラムは、まったく計測されていないかのように実行されます。
私がしたことのバージョンを取り除いたもの:
印刷されるのは次のとおりです。
私が期待していたのは:
私は何を間違っていますか?