我用 jrebel 的调试模式启动了这个项目。当我更新类时,jrebel 抛出以下日志异常。尽管我没有对类进行任何更改,但我只是添加了一个空格。在启动模式下启动是正常的。
15:01:45,667 ERROR [STDERR] 2019-10-17 15:01:45 JRebel: ERROR Failed to transform class com/whir/rd/entryinvoice/actionsupport/InvoiceAction: java.lang.NoSuchMethodError: a
at com.zeroturnaround.javarebel.flw.a(SourceFile:106)
at com.zeroturnaround.javarebel.flw.doTransform(SourceFile:70)
at com.zeroturnaround.javarebel.flw.transform(SourceFile:57)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.applyTransformation(SourceFile:78)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.transform(SourceFile:70)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClassesImpl(Native Method)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClasses(SourceFile:149)
at com.zeroturnaround.javarebel.flv.a(SourceFile:106)
at com.zeroturnaround.javarebel.fkr.a(SourceFile:704)
at com.zeroturnaround.reload.al.d(SourceFile:588)
at com.zeroturnaround.reload.al.b(SourceFile:532)
at com.zeroturnaround.reload.al.a(SourceFile:74)
at com.zeroturnaround.reload.ao.a(SourceFile:833)
at com.zeroturnaround.reload.ao.a(SourceFile:749)
at com.zeroturnaround.reload.al.a(SourceFile:475)
at com.zeroturnaround.reload.b.m(SourceFile:513)
at com.zeroturnaround.reload.b.l(SourceFile:286)
at com.zeroturnaround.reload.b.k(SourceFile:57)
at com.zeroturnaround.reload.c.run(SourceFile:124)
15:01:45,738 ERROR [STDERR] 2019-10-17 15:01:45 JRebel: ERROR com.whir.rd.entryinvoice.actionsupport.InvoiceAction: java.lang.UnsupportedOperationException: JVMTI_ERROR_UNSUPPORTED_REDEFINITION_HIERARCHY_CHANGED
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClassesImpl(Native Method)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClasses(SourceFile:149)
at com.zeroturnaround.javarebel.flv.a(SourceFile:106)
at com.zeroturnaround.javarebel.fkr.a(SourceFile:703)
at com.zeroturnaround.reload.al.d(SourceFile:588)
at com.zeroturnaround.reload.al.b(SourceFile:530)
at com.zeroturnaround.reload.al.a(SourceFile:74)
at com.zeroturnaround.reload.ao.a(SourceFile:833)
at com.zeroturnaround.reload.ao.a(SourceFile:749)
at com.zeroturnaround.reload.al.a(SourceFile:474)
at com.zeroturnaround.reload.b.m(SourceFile:513)
at com.zeroturnaround.reload.b.l(SourceFile:284)
at com.zeroturnaround.reload.b.k(SourceFile:57)
at com.zeroturnaround.reload.c.run(SourceFile:123)
15:01:45,740 ERROR [STDERR] 2019-10-17 15:01:45 JRebel: ERROR Failed to transform class com/opensymphony/xwork2/ActionSupport: java.lang.NoSuchMethodError: a
at com.zeroturnaround.javarebel.flw.a(SourceFile:106)
at com.zeroturnaround.javarebel.flw.doTransform(SourceFile:70)
at com.zeroturnaround.javarebel.flw.transform(SourceFile:57)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.applyTransformation(SourceFile:78)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.transform(SourceFile:70)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClassesImpl(Native Method)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClasses(SourceFile:149)
at com.zeroturnaround.javarebel.flv.a(SourceFile:106)
at com.zeroturnaround.javarebel.fkr.a(SourceFile:704)
at com.zeroturnaround.reload.al.d(SourceFile:588)
at com.zeroturnaround.reload.al.b(SourceFile:532)
at com.zeroturnaround.reload.al.a(SourceFile:74)
at com.zeroturnaround.reload.ao.a(SourceFile:833)
at com.zeroturnaround.reload.ao.a(SourceFile:749)
at com.zeroturnaround.reload.al.a(SourceFile:475)
at com.zeroturnaround.reload.b.m(SourceFile:513)
at com.zeroturnaround.reload.b.l(SourceFile:286)
at com.zeroturnaround.reload.b.k(SourceFile:57)
at com.zeroturnaround.reload.c.run(SourceFile:124)
15:01:45,777 ERROR [STDERR] 2019-10-17 15:01:45 JRebel: ERROR com.opensymphony.xwork2.ActionSupport: java.lang.UnsupportedOperationException: JVMTI_ERROR_UNSUPPORTED_REDEFINITION_HIERARCHY_CHANGED
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClassesImpl(Native Method)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClasses(SourceFile:149)
at com.zeroturnaround.javarebel.flv.a(SourceFile:106)
at com.zeroturnaround.javarebel.fkr.a(SourceFile:703)
at com.zeroturnaround.reload.al.d(SourceFile:588)
at com.zeroturnaround.reload.al.b(SourceFile:530)
at com.zeroturnaround.reload.al.a(SourceFile:74)
at com.zeroturnaround.reload.ao.a(SourceFile:833)
at com.zeroturnaround.reload.ao.a(SourceFile:749)
at com.zeroturnaround.reload.al.a(SourceFile:474)
at com.zeroturnaround.reload.b.m(SourceFile:513)
at com.zeroturnaround.reload.b.l(SourceFile:284)
at com.zeroturnaround.reload.b.k(SourceFile:57)
at com.zeroturnaround.reload.c.run(SourceFile:123)
15:01:45,779 ERROR [STDERR] 2019-10-17 15:01:45 JRebel: ERROR Failed to transform class com/whir/component/actionsupport/BaseActionSupport: java.lang.NoSuchMethodError: a
at com.zeroturnaround.javarebel.flw.a(SourceFile:106)
at com.zeroturnaround.javarebel.flw.doTransform(SourceFile:70)
at com.zeroturnaround.javarebel.flw.transform(SourceFile:57)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.applyTransformation(SourceFile:78)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.transform(SourceFile:70)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClassesImpl(Native Method)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClasses(SourceFile:149)
at com.zeroturnaround.javarebel.flv.a(SourceFile:106)
at com.zeroturnaround.javarebel.fkr.a(SourceFile:704)
at com.zeroturnaround.reload.al.d(SourceFile:588)
at com.zeroturnaround.reload.al.b(SourceFile:532)
at com.zeroturnaround.reload.al.a(SourceFile:74)
at com.zeroturnaround.reload.ao.a(SourceFile:833)
at com.zeroturnaround.reload.ao.a(SourceFile:749)
at com.zeroturnaround.reload.al.a(SourceFile:475)
at com.zeroturnaround.reload.b.m(SourceFile:513)
at com.zeroturnaround.reload.b.l(SourceFile:286)
at com.zeroturnaround.reload.b.k(SourceFile:57)
at com.zeroturnaround.reload.c.run(SourceFile:124)
15:01:45,788 ERROR [STDERR] 2019-10-17 15:01:45 JRebel: ERROR com.whir.component.actionsupport.BaseActionSupport: java.lang.UnsupportedOperationException: JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_DELETED
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClassesImpl(Native Method)
at com.zeroturnaround.reload.jvmti.MinimalInstrumentation.retransformClasses(SourceFile:149)
at com.zeroturnaround.javarebel.flv.a(SourceFile:106)
at com.zeroturnaround.javarebel.fkr.a(SourceFile:703)
at com.zeroturnaround.reload.al.d(SourceFile:588)
at com.zeroturnaround.reload.al.b(SourceFile:530)
at com.zeroturnaround.reload.al.a(SourceFile:74)
at com.zeroturnaround.reload.ao.a(SourceFile:833)
at com.zeroturnaround.reload.ao.a(SourceFile:749)
at com.zeroturnaround.reload.al.a(SourceFile:474)
at com.zeroturnaround.reload.b.m(SourceFile:513)
at com.zeroturnaround.reload.b.l(SourceFile:284)
at com.zeroturnaround.reload.b.k(SourceFile:57)
at com.zeroturnaround.reload.c.run(SourceFile:123)
15:01:45,847 INFO [STDOUT] 2019-10-17 15:01:45 JRebel: Reloading class 'com.whir.rd.entryinvoice.actionsupport.InvoiceAction'.
这让我很困惑。jrebel和debug模式有冲突吗?我用的是最新版的jrebel,虚拟机oracle jrockit 1.6