Używam ByteBuddy do tworzenia klasy w czasie wykonywania z dynamicznie generowanym kodem bajtu. Wygenerowana klasa robi to, co ma zrobić, ale chcę ręcznie sprawdzić wygenerowany kod bajtu, aby upewnić się, że jest poprawny.Wyświetlanie wygenerowane przez bajt kodu bajtowego
Przykładowo
Class<?> dynamicType = new ByteBuddy()
.subclass(MyAbstractClass.class)
.method(named("mymethod"))
.intercept(new MyImplementation(args))
.make()
.load(getClass().getClassLoader(), ClassLoadingStrategy.Default.WRAPPER)
.getLoaded();
gdy polecenia łańcuchy MyImplementation stwardnienie StackManipulation tworząc dynamicznie wygenerowany kod.
Czy mogę napisać wygenerowaną klasę do pliku, (aby można było ręcznie sprawdzać z IDE), lub w inny sposób wydrukować kod bajtowy dla wygenerowanej klasy?
Jak wskazano, można zapisać plik jako plik klasy i sprawdzić go za pomocą * javap *. –