使用 Byte Buddy,我尝试在 @Advice.OnMethodExit
和 @Advice.OnMethodEnter
上添加一些内容。我想通过我正在构建的自定义代理添加这样的 block 。
public String getSomeMethodName() {
try{
// Default block of code present without instrumentation
}finally {
// Some Code Snippets added by agent.
}
}
基本上该函数甚至没有 try
block 。我怎样才能添加它以及finally
block 。这样做是一个好的做法吗?或者实现这一目标的最佳实践是什么?
我正在尝试添加
try{
}catch(){
}
在OnMethod.Enter
中。
想要包含 finally
block OnMethod.Exit
。
最佳答案
使用@Advice.OnMethodExit(onThrowable = Throwable.class)
。即使抛出任何可抛出类型,这也会触发建议,finally block 的语义是什么。
关于java - Byte Buddy 将 Try block 添加到现有方法中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59760073/