小编Gau*_*tam的帖子

javassist.CannotCompileException: [源错误] 没有这样的字段:$1

参考:http : //jboss-javassist.github.io/javassist/tutorial/tutorial2.html

method.insertBefore("{ System.out.println($1);}");
Run Code Online (Sandbox Code Playgroud)

此语句给了我以下错误:

Exception: javassist.CannotCompileException: [source error] no such field: $1
javassist.CannotCompileException: [source error] no such field: $1
        at javassist.CtBehavior.insertBefore(CtBehavior.java:774)
        at javassist.CtBehavior.insertBefore(CtBehavior.java:734)
        at com.here.debugHelper.DurationTransformer.transform(DurationTransformer.java:124)
        at sun.instrument.TransformerManager.transform(Unknown Source)
        at sun.instrument.InstrumentationImpl.transform(Unknown Source)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at com.here.debugHelper.TestInstrumentation.main(TestInstrumentation.java:10)
Caused by: compile error: no such field: $1 …
Run Code Online (Sandbox Code Playgroud)

java instrumentation bytecode code-injection javassist

5
推荐指数
1
解决办法
2524
查看次数