問題タブ [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 トレース
任意の変数またはオブジェクトへのすべての実行時アクセスをログに記録する必要がある 現在の方向性は、変更されたバイトコードでクラスファイルをマークアップすることです パフォーマンスは現在問題ではありません
BCEL は、バイトコード内の関連する各オペコードにいくつかのトレース命令を追加するのに適しています。
ただし、ソース ファイルからセマンティック情報を追加したいと思います。たとえば、この変数は for ループ カウンターです。これには、AST / 構文解析ツリーの操作が必要になります。
では、ASM / JavaAssist はより良い選択ですか ???
変数の使用状況をログに記録することが重要な要件であるため、バイトコードはこれを処理するのに適切なレベルに見えます。しかし、最終的にはソース解析ツリーにアクセスして、より多くのセマンティック情報を取得する必要があります
何かご意見は ?
psこれは大規模な長期プロジェクトになります
java - BCEL を使用して Java クラスにコメントを追加できますか?
1.BCEL を使用して、既存の Java クラスにコメントを追加できますか? 2. BCEL を使用して、新しく手動で生成した Java クラスにコメントを追加できますか?
java - JAVA BCEL NEWARRAY getType 基本タイプ
BCELでこれを確認するにはどうすればよいですか..
Javaのバイトコードは
私はこれをすでに訪問者のために行っています
しかし、newarray がint[]
BCELでこれを確認するにはどうすればよいですか?
私はこれを試しました
よく
しかし、上記の ^ は機能しないことがわかりますint
..しかしint[]
しかしType.INT
、ただint
..ではないint[]
..
Type をどのように表現しint[]
ますか?
私はBCELソースコードを読んでいて、NEWARRAY.getType()はこれを返します..
ご覧のとおり、クラスを返すType
ので..
http://commons.apache.org/bcel/apidocs/org/apache/bcel/generic/Type.htmlを見てください
http://commons.apache.org/bcel/apidocs/org/apache/bcel/generic/ArrayType.html
Type
ARRAYには何もありませんint[]
。
java - ClassParserコンストラクターパラメーターを指定する方法は?
ClassParserを使用してメソッドパラメーター名を取得しようとしています。ClassParserコンストラクターは、パラメーターとしてクラス名を取得します。例:
パラメータをStringクラスに設定しようとしています。「String.class」を使用しようとしましたが、機能しません。「java.lang.String.class」も使用しましたが、動作しません。最後に、this.getClass()。getResource( "java / lang / String")。toString()を試しましたが、これも機能しません。どうすればこれを解決できますか?
ありがとう
java - Apache BCELを使用してクラスコンストラクタパラメータを取得するにはどうすればよいですか?
BCELを使用してメソッドを取得することはできますが、同じライブラリを使用してクラスのコンストラクターを取得することは可能ですか?
java - JavaAndroidでクラスを動的に編集/作成する
実行時にクラスを動的に定義し、Androidでインスタンス化する方法を探しています。私の理解では、これはすでにAndroidで行われているので、それを理解するのに少し助けが必要です。
JavascriptとPHPで同様の結果を得ることができます。ASM、BCEL、CGlibなどを使用してJavaで実行できることはわかっています。ただし、Androidで動作するかどうかを理解するには、これらのいずれについても十分に理解していません。または、それらが機能する中で、どのような影響がありますか?
仮に、3つすべてがAndroidで機能する場合、どちらを使用するか、どのように使用するかを理解し始める場所について、誰かが私に正しい方向を示すことができますか?
私はJavaプログラミングをあまり行っていません。また、AndroidでJavaプログラミングを使用しているのはつい最近のことです。そのため、入手できるすべてのヘルプ/修正に感謝しています。そうは言っても、あなたの答えが単純ではない場合、私は感謝します:これをしないでください。私はこれを正しく行う方法ではなく、具体的に行う方法を探しています。少なくとも、私のアプリがクラッシュするまでは。:)
これは、Androidで次の状況ですでに発生していると思います:( 100%確実ではありません)
JSONからオブジェクトを作成します。AIDL
java - ローカル変数がJavaバイトコードから「final」であるかどうかをどのように判断できますか?(BCELに関連)
ローカル変数がJavaバイトコードに「final」で格納されているかどうかなどの情報はどこにありますか?フィールド(グローバル変数)とメソッドの場合、これらはアクセスフラグビットにありますが、ローカル変数テーブルに同等のものが見つからないようです。
BCELを使用してローカル変数がfinalであるかどうかを確認し、AccessFlagsクラスのフィールド、メソッド、およびクラスに相当するものを見つけたので、この質問に興味があります。
前もって感謝します。
java - BCEL - return ステートメントのデバッグ
既存の *.class ファイルを変更したい。メソッドが終了してその値を返すときに、デバッグ メッセージ「Got result: %return value%」を表示したいと考えています。BCELを使用してこれを達成するにはどうすればよいですか?
java - BCEL による変更が表示されない
BCEL を使用して Test クラスのメイン メソッドを変更しようとしています。System.out.println("This is added by BCEL at runtime")
main() の先頭に追加したいだけです。例外は発生せず、InstructionList にはコマンドが表示されますが、文字列は出力されず、javap -c
変更されていないバージョンが表示されます。これが私のコードです:
java - Java委任呼び出しBCEL/ASM
SOFの皆さん、こんにちは!
私が探しているものは? 私はWebを検索して検索してきましたが、クラス(もちろんコンパイル済み)にインターフェイスを実装/注入し、クラスのインターフェイスによって必要なメソッドを追加するにはどうすればよいですか?私もできる限りBCELとASMを学ぼうとしていますが、リソースが不足しているので(親愛なる友人のGoogleでも)、ここで助けが得られることを願っています。私はあなたが私や何かをスプーンで与えることを期待していませんが、私はいくつかの指示が必要です!:) ASMサイトにそのすばらしい本があり、それらに関するすべてのチュートリアルがたくさんあることは知っていますが、前に述べたように、どうすればそのインターフェイス/メソッドを追加できるのか理解できません。 私は何を試しましたか?私はここ でこのリンクを見つけましたしかし、それは私が期待したようにうまくいきませんでした..私は自分が何をしたいのかを正確に知っていますが、どうすればそれを達成できるのかわかりません..ここに例があります!
そのメソッドの実装は次のとおりです。
親愛なるSOFメンバー、これはどのように機能しますか?