byte-buddy

    1

    1答えて

    Byte Buddyを使用してフィールドのセッターとゲッターを作成しようとしています。学びページhereのアクセスフィールドセクションで public class Sample { public static void main(String[] args) throws InstantiationException, IllegalAccessException, NoSuchFie

    4

    1答えて

    バイトバディを使用してフィールドにセッターを作成するにはどうすればよいですか?推奨される構文は何ですか? 私はフィールド(私の元の質問here)からゲッターを作成するために管理しますが、セッターを作成するためにdefineMethodを使用してMethod Implementation.Context.Default ... is no bean property例外をスローしています。 this

    1

    1答えて

    私はウィルのblog postで説明した動作を再作成しようとしているが、次の例外を取得しています経由でインストルメントWillのブログ - 3つの別々の瓶、1つはエージェント、1つはインターセプター、もう1つはMainクラスです。 私はまたsecurityfixer-例のマニフェストにmainClassスタンザを追加することで実行可能jarファイルとしてそれを実行しようとしたが、それは完全に機器を

    1

    1答えて

    実行時に効率的なプロパティアクセサーを生成しようとしています。ゲッター/セッターのペアのためにこれを行う class SomeProperty implements PropertyAccess<String> { public void set(Object o, String s) { ((SomeClass) o).setFoo(s); } publ

    1

    1答えて

    Byte Buddyでいくつかのメソッドの可視性を変更することは可能ですか?私はプライベートな静的メソッドを持つユーザークラスを持っているので、それらのメソッドにいくつかの呼び出しを委譲する必要がありますが、プライベートなので現在失敗しています。だから、上記のメソッドをpublic修飾子を追加してトランスフォームすることで、ユーザークラスを再定義できるかどうかと思います。レコードの 、バイトバディ

    1

    1答えて

    私は、実行時にByteBuddyAgentを使ってデフォルトのメソッドに注釈を付そうとしています。既定の実装を維持するために、私はリベース戦略を使用していますが、元のメソッドへの呼び出しで新しいメソッドをインターセプトする方法を理解することはできません。 私はMethodCall.invokeSuper()とMethodCall.invokeSelf().onDefault()を使ってみましたが、

    1

    3答えて

    私は次の操作を実行しようとしたとき、私はロード・コールで例外を取得: Field datasourceExtensionField = Grid.class.getDeclaredField("datasourceExtension"); datasourceExtensionField.setAccessible(true); RpcDataProviderExtension

    2

    1答えて

    Javaでは、InvocationHandlerの実装を使用して動的プロキシを作成することができます。 JVMの最適化にもかかわらず、リフレクションの使用には常にメソッドを呼び出すオーバーヘッドがあります。 この問題を解決しようとすると、実行時にByteBuddyを使用してプロキシクラスを作成しようとしましたが、ドキュメントがこの面で十分にはっきりしていないようです。 メソッドの呼び出しをいくつか

    3

    1答えて

    クラスに新しいfinalフィールドを作成し、クラスインスタンス化の最後のフィールドに設定されたパラメータを持つコンストラクタを作成することはできますか?私はいくつかのアプローチを試して答えを探しましたが、それを行う方法の例は見つかりませんでした。 私が今持っているもの: Class proxyClass = new ByteBuddy().subclass(Object.class).implem

    2

    1答えて

    ByteBuddyを使用してString.classやInteger.classなどのjava.langパッケージのクラスを再定義しようとしていますが、成功しません。私の質問はそれが可能なのだろうか? これは私が私のJavaエージェントにしようとしているコードです: public static void premain(String agentArgs, Instrumentation inst)