問題タブ [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.

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

java - Java - メソッド内の何かを取得する方法

私が知っていることから、Javaはメソッド内で何も取得できません。そのため、javac でオプション -g または -g:vars を使用しています。

例:

そこで、BCEL を使用してローカル変数を取得します。

ただし、変数が のように初期化されていないと機能しませんString b。さらに、コンストラクターの呼び出しnew Thread()new File()、静的メソッドの呼び出しを追跡したり、内部で初期化したりしJFileChooserたいnew Fileと考えていJOptionPaneます。Threadだから私は出力で見たいString b, JOptionPane, ImageIO, とFile.

プログラムでそれらを印刷するにはどうすればよいですか?

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

java - BCEL を使用した Java クラスの変更順序

Java ライブラリ (私の場合はbcel ) が他のコードを変更するのはいつですか?

これは、問題のクラスがクラスローダーのブートストラップ プロセスによってロードされる前または後に発生しますか?

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

bytecode - Java バイトコード操作ライブラリ

私はプロジェクトに取り組み始めており、タスクの 1 つで、クラスとそのメソッドに関する情報を収集するためにソース コードを分析する必要があります。より具体的には、メソッドごとに、メソッド本体全体でどの内部属性と外部オブジェクト (参照) を使用するかを知る必要があります。

スーパーバイザーと話し合いましたが、彼らはバイトコード操作ライブラリーが進むべき道だと考えています。BCEL、ASM、Javassist については既に調べましたが、どれを使用すればよいかわかりません。それらはすべて、すべての命令を表示して必要な情報を取得できるメソッド本体へのアクセスを提供しますか?

アドバイスをいただければ幸いです。ありがとうございました!

0 投票する
2 に答える
543 参照

java - 通常のクラス(java.lang.class )オブジェクトからjavaclass(org.apache.bcel.classfile.JavaClass)を取得するにはどうすればよいですか

クラス オブジェクト (`java lang`) にクラス ロードできる .class ファイルがあります。クラス オブジェクトを BCEL 中間 Java クラス ( org.apache.bcel.classfile.JavaClass) オブジェクトに変換する必要があります。どうすればいいですか?

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

bcel - 別の Java クラスを使用する Java クラスからコードを生成する (BCEL)

ByteCode Engineering Library (by Apache) を使用して、別のクラスから出力クラスのコードを生成 (および変更) しようとしています。

そのため、すべてのメソッドに対して ClassName から printSomething を呼び出そうとしています。問題は、実際に文字列引数をメソッド printSomething に渡す方法がわからないことです。

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

java - BCel オンザフライでメソッドにパッチを適用しても機能しない

BCEL を使用して Java メソッドにコールバックを挿入しようとしていますが、コールバックが呼び出されません。プログラムは、まったく計測されていないかのように実行されます。

私がしたことのバージョンを取り除いたもの:

印刷されるのは次のとおりです。

私が期待していたのは:

私は何を間違っていますか?