EdM*_*elo 5 java java-bytecode-asm byte-buddy
当使用 拦截方法的实现时@Advice,是否可以访问局部变量?
不,事实并非如此,这部分是设计使然。方法的实现应该是私有细节,而建议则在调用前后添加代码,其中方法的签名是其 API 的一部分。
在某些时候,Byte Buddy 可能会提供替换某些字段和方法访问的可能性,但以一种您不依赖于实现的方式。
为了与显式字节码混合,Byte Buddy 提供AsmVisitorWrapper直接使用 ASM API,这比 Byte Buddy 的高级 API 更适合字节码级操作。