Known Issuesが追加されました。
https://btrace.dev.java.net/
先月末頃にKnown Issuesが追加され、
.classファイルが壊れる問題がレポートされました。
ところで、BTraceクラスをちょっと修正すると、問題が出なくなりました。
import static com.sun.btrace.BTraceUtils.*; import com.sun.btrace.*; import com.sun.btrace.annotations.*; @BTrace public class Test { @OnMethod(clazz = "java.util.ArrayList", method = "add") public static void onAdd() { println("add!"); } }
このようなBTraceクラスを作りました。
前はonAddの引数にAnyType[]を指定していたのですが、今回は引数なしです。
それだけで上手く動くということは、AnyTypeに問題があると予想できます。
BTraceのIssue Trackerを見ると、同様の問題がレポートされていました。
I'm getting ClassFormatError during instrumentation when using samples
https://btrace.dev.java.net/issues/show_bug.cgi?id=8
JdbcQueries.java and ArgArray.java. The defect seems to be related to class
com.sun.btrace.AnyType
この問題さえ解決すれば、SeasarにBTraceを掛けられるようになるでしょうね。