1

いくつかの異なるクラスから呼び出されるマネージャーがいます。マネージャは Inject によってインスタンス化されます。デバッグをしているとき、誰がこのマネージャーをインスタンス化したのかを知る必要がありますか? これを行う方法はありますか?

4

2 に答える 2

2

呼び出し元がマネージャーを作成するメソッドに自分自身を渡し、マネージャーのコンストラクターに渡され、それがプライベート変数に格納されない限り、そうではありません。この情報を明示的に追跡しないと、失われます。

または、マネージャーのコンストラクターにデバッグ ブレークポイントを設定し、ブレークポイントにヒットしたときにコール スタックを調べて、それがどこから呼び出されたかを調べることもできます。

于 2012-12-14T08:54:49.910 に答える
0

マネージャーをインスタンス化するオブジェクトを見つける 1 つの方法は、マネージャーのコンストラクターでスタック トレースを作成することです。Thread.currentThread().getStackTrace() を使用して StackTraceElements の配列を取得します。

デバッグ時には、この StackTraceElements の配列を調べるだけで、マネージャーを作成したオブジェクトを確認できます。

于 2012-12-14T09:01:43.623 に答える