Fiji fails to launch after upgrade to ImageJ daily build

Fiji fails to launch after I use Help>Update ImageJ to upgade to the ImageJ daily build (1.53h21).

Here is the console output:

[MacBook-Pro-3:Fiji.app/Contents/MacOS] wayne% ./ImageJ-macosx
java.lang.IllegalArgumentException: Cannot modify method: public void run(java.lang.String arg)
	at net.imagej.patcher.CodeHacker.insertAtTopOfMethod(CodeHacker.java:166)
	at net.imagej.patcher.LegacyInjector.inject(LegacyInjector.java:288)
	at net.imagej.patcher.LegacyInjector.injectHooks(LegacyInjector.java:107)
	at net.imagej.patcher.LegacyEnvironment.initialize(LegacyEnvironment.java:100)
	at net.imagej.patcher.LegacyEnvironment.applyPatches(LegacyEnvironment.java:494)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:395)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:374)
	at net.imagej.legacy.LegacyService.<clinit>(LegacyService.java:141)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at org.scijava.service.ServiceHelper.createServiceRecursively(ServiceHelper.java:300)
	at org.scijava.service.ServiceHelper.createExactService(ServiceHelper.java:267)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:229)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:192)
	at org.scijava.service.ServiceHelper.loadServices(ServiceHelper.java:164)
	at org.scijava.Context.<init>(Context.java:278)
	at org.scijava.Context.<init>(Context.java:234)
	at org.scijava.Context.<init>(Context.java:174)
	at org.scijava.Context.<init>(Context.java:160)
	at net.imagej.ImageJ.<init>(ImageJ.java:77)
	at net.imagej.Main.main(Main.java:54)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.imagej.launcher.ClassLauncher.launch(ClassLauncher.java:291)
	at net.imagej.launcher.ClassLauncher.run(ClassLauncher.java:198)
	at net.imagej.launcher.ClassLauncher.main(ClassLauncher.java:89)
Caused by: java.lang.IllegalArgumentException: No such class: MacAdapter
	at net.imagej.patcher.CodeHacker.getClass(CodeHacker.java:878)
	at net.imagej.patcher.CodeHacker.getMethod(CodeHacker.java:904)
	at net.imagej.patcher.CodeHacker.getBehavior(CodeHacker.java:894)
	at net.imagej.patcher.CodeHacker.insertAtTopOfMethod(CodeHacker.java:157)
	... 30 more
Caused by: javassist.NotFoundException: MacAdapter
	at javassist.ClassPool.get(ClassPool.java:430)
	at net.imagej.patcher.CodeHacker.getClass(CodeHacker.java:873)
	... 33 more
java.lang.IllegalArgumentException: Cannot handle replace call to addCheckbox in ij.plugin.FolderOpener's boolean showDialog(ij.ImagePlus imp, java.lang.String[] list)
	at net.imagej.patcher.CodeHacker.replaceCallInMethod(CodeHacker.java:723)
	at net.imagej.patcher.LegacyExtensions.injectHooks(LegacyExtensions.java:267)
	at net.imagej.patcher.LegacyInjector.inject(LegacyInjector.java:306)
	at net.imagej.patcher.LegacyInjector.injectHooks(LegacyInjector.java:107)
	at net.imagej.patcher.LegacyEnvironment.initialize(LegacyEnvironment.java:100)
	at net.imagej.patcher.LegacyEnvironment.applyPatches(LegacyEnvironment.java:494)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:395)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:374)
	at net.imagej.legacy.LegacyService.<clinit>(LegacyService.java:141)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at org.scijava.service.ServiceHelper.createServiceRecursively(ServiceHelper.java:300)
	at org.scijava.service.ServiceHelper.createExactService(ServiceHelper.java:267)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:229)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:192)
	at org.scijava.service.ServiceHelper.loadServices(ServiceHelper.java:164)
	at org.scijava.Context.<init>(Context.java:278)
	at org.scijava.Context.<init>(Context.java:234)
	at org.scijava.Context.<init>(Context.java:174)
	at org.scijava.Context.<init>(Context.java:160)
	at net.imagej.ImageJ.<init>(ImageJ.java:77)
	at net.imagej.Main.main(Main.java:54)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.imagej.launcher.ClassLauncher.launch(ClassLauncher.java:291)
	at net.imagej.launcher.ClassLauncher.run(ClassLauncher.java:198)
	at net.imagej.launcher.ClassLauncher.main(ClassLauncher.java:89)
Caused by: java.lang.IllegalArgumentException: No such method: boolean showDialog(ij.ImagePlus imp, java.lang.String[] list)
	at net.imagej.patcher.CodeHacker.getMethod(CodeHacker.java:915)
	at net.imagej.patcher.CodeHacker.getBehavior(CodeHacker.java:894)
	at net.imagej.patcher.CodeHacker.replaceCallInMethod(CodeHacker.java:667)
	... 31 more
Caused by: javassist.NotFoundException: showDialog(..) is not found in ij.plugin.FolderOpener
	at javassist.CtClassType.getDeclaredMethod(CtClassType.java:1363)
	at net.imagej.patcher.CodeHacker.getMethod(CodeHacker.java:912)
	... 33 more
java.lang.IllegalArgumentException: Cannot handle replace call to getNextBoolean in ij.plugin.FolderOpener's boolean showDialog(ij.ImagePlus imp, java.lang.String[] list)
	at net.imagej.patcher.CodeHacker.replaceCallInMethod(CodeHacker.java:723)
	at net.imagej.patcher.LegacyExtensions.injectHooks(LegacyExtensions.java:271)
	at net.imagej.patcher.LegacyInjector.inject(LegacyInjector.java:306)
	at net.imagej.patcher.LegacyInjector.injectHooks(LegacyInjector.java:107)
	at net.imagej.patcher.LegacyEnvironment.initialize(LegacyEnvironment.java:100)
	at net.imagej.patcher.LegacyEnvironment.applyPatches(LegacyEnvironment.java:494)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:395)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:374)
	at net.imagej.legacy.LegacyService.<clinit>(LegacyService.java:141)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at org.scijava.service.ServiceHelper.createServiceRecursively(ServiceHelper.java:300)
	at org.scijava.service.ServiceHelper.createExactService(ServiceHelper.java:267)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:229)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:192)
	at org.scijava.service.ServiceHelper.loadServices(ServiceHelper.java:164)
	at org.scijava.Context.<init>(Context.java:278)
	at org.scijava.Context.<init>(Context.java:234)
	at org.scijava.Context.<init>(Context.java:174)
	at org.scijava.Context.<init>(Context.java:160)
	at net.imagej.ImageJ.<init>(ImageJ.java:77)
	at net.imagej.Main.main(Main.java:54)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.imagej.launcher.ClassLauncher.launch(ClassLauncher.java:291)
	at net.imagej.launcher.ClassLauncher.run(ClassLauncher.java:198)
	at net.imagej.launcher.ClassLauncher.main(ClassLauncher.java:89)
Caused by: java.lang.IllegalArgumentException: No such method: boolean showDialog(ij.ImagePlus imp, java.lang.String[] list)
	at net.imagej.patcher.CodeHacker.getMethod(CodeHacker.java:915)
	at net.imagej.patcher.CodeHacker.getBehavior(CodeHacker.java:894)
	at net.imagej.patcher.CodeHacker.replaceCallInMethod(CodeHacker.java:667)
	... 31 more
Caused by: javassist.NotFoundException: showDialog(..) is not found in ij.plugin.FolderOpener
	at javassist.CtClassType.getDeclaredMethod(CtClassType.java:1363)
	at net.imagej.patcher.CodeHacker.getMethod(CodeHacker.java:912)
	... 33 more
java.lang.IllegalArgumentException: Method void createMacro() in ij.plugin.frame.Recorder does not return on null
	at net.imagej.patcher.CodeHacker.dontReturnOnNull(CodeHacker.java:497)
	at net.imagej.patcher.LegacyExtensions.addEditorExtensionPoints(LegacyExtensions.java:320)
	at net.imagej.patcher.LegacyExtensions.injectHooks(LegacyExtensions.java:287)
	at net.imagej.patcher.LegacyInjector.inject(LegacyInjector.java:306)
	at net.imagej.patcher.LegacyInjector.injectHooks(LegacyInjector.java:107)
	at net.imagej.patcher.LegacyEnvironment.initialize(LegacyEnvironment.java:100)
	at net.imagej.patcher.LegacyEnvironment.applyPatches(LegacyEnvironment.java:494)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:395)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:374)
	at net.imagej.legacy.LegacyService.<clinit>(LegacyService.java:141)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at org.scijava.service.ServiceHelper.createServiceRecursively(ServiceHelper.java:300)
	at org.scijava.service.ServiceHelper.createExactService(ServiceHelper.java:267)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:229)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:192)
	at org.scijava.service.ServiceHelper.loadServices(ServiceHelper.java:164)
	at org.scijava.Context.<init>(Context.java:278)
	at org.scijava.Context.<init>(Context.java:234)
	at org.scijava.Context.<init>(Context.java:174)
	at org.scijava.Context.<init>(Context.java:160)
	at net.imagej.ImageJ.<init>(ImageJ.java:77)
	at net.imagej.Main.main(Main.java:54)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.imagej.launcher.ClassLauncher.launch(ClassLauncher.java:291)
	at net.imagej.launcher.ClassLauncher.run(ClassLauncher.java:198)
	at net.imagej.launcher.ClassLauncher.main(ClassLauncher.java:89)
java.lang.IllegalArgumentException: Cannot handle replace call to runPlugIn in ij.plugin.frame.Recorder's void createMacro()
	at net.imagej.patcher.CodeHacker.replaceCallInMethod(CodeHacker.java:723)
	at net.imagej.patcher.CodeHacker.replaceCallInMethod(CodeHacker.java:648)
	at net.imagej.patcher.LegacyExtensions.addEditorExtensionPoints(LegacyExtensions.java:321)
	at net.imagej.patcher.LegacyExtensions.injectHooks(LegacyExtensions.java:287)
	at net.imagej.patcher.LegacyInjector.inject(LegacyInjector.java:306)
	at net.imagej.patcher.LegacyInjector.injectHooks(LegacyInjector.java:107)
	at net.imagej.patcher.LegacyEnvironment.initialize(LegacyEnvironment.java:100)
	at net.imagej.patcher.LegacyEnvironment.applyPatches(LegacyEnvironment.java:494)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:395)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:374)
	at net.imagej.legacy.LegacyService.<clinit>(LegacyService.java:141)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at org.scijava.service.ServiceHelper.createServiceRecursively(ServiceHelper.java:300)
	at org.scijava.service.ServiceHelper.createExactService(ServiceHelper.java:267)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:229)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:192)
	at org.scijava.service.ServiceHelper.loadServices(ServiceHelper.java:164)
	at org.scijava.Context.<init>(Context.java:278)
	at org.scijava.Context.<init>(Context.java:234)
	at org.scijava.Context.<init>(Context.java:174)
	at org.scijava.Context.<init>(Context.java:160)
	at net.imagej.ImageJ.<init>(ImageJ.java:77)
	at net.imagej.Main.main(Main.java:54)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.imagej.launcher.ClassLauncher.launch(ClassLauncher.java:291)
	at net.imagej.launcher.ClassLauncher.run(ClassLauncher.java:198)
	at net.imagej.launcher.ClassLauncher.main(ClassLauncher.java:89)
Caused by: javassist.CannotCompileException: No code replaced!
	at net.imagej.patcher.CodeHacker$EagerExprEditor.instrument(CodeHacker.java:1290)
	at net.imagej.patcher.CodeHacker.replaceCallInMethod(CodeHacker.java:720)
	... 33 more
java.lang.IllegalArgumentException: Cannot modify method: public void run(java.lang.String arg)
	at net.imagej.patcher.CodeHacker.insertAtTopOfMethod(CodeHacker.java:166)
	at net.imagej.patcher.LegacyExtensions.handleMacAdapter(LegacyExtensions.java:556)
	at net.imagej.patcher.LegacyExtensions.injectHooks(LegacyExtensions.java:292)
	at net.imagej.patcher.LegacyInjector.inject(LegacyInjector.java:306)
	at net.imagej.patcher.LegacyInjector.injectHooks(LegacyInjector.java:107)
	at net.imagej.patcher.LegacyEnvironment.initialize(LegacyEnvironment.java:100)
	at net.imagej.patcher.LegacyEnvironment.applyPatches(LegacyEnvironment.java:494)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:395)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:374)
	at net.imagej.legacy.LegacyService.<clinit>(LegacyService.java:141)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at org.scijava.service.ServiceHelper.createServiceRecursively(ServiceHelper.java:300)
	at org.scijava.service.ServiceHelper.createExactService(ServiceHelper.java:267)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:229)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:192)
	at org.scijava.service.ServiceHelper.loadServices(ServiceHelper.java:164)
	at org.scijava.Context.<init>(Context.java:278)
	at org.scijava.Context.<init>(Context.java:234)
	at org.scijava.Context.<init>(Context.java:174)
	at org.scijava.Context.<init>(Context.java:160)
	at net.imagej.ImageJ.<init>(ImageJ.java:77)
	at net.imagej.Main.main(Main.java:54)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.imagej.launcher.ClassLauncher.launch(ClassLauncher.java:291)
	at net.imagej.launcher.ClassLauncher.run(ClassLauncher.java:198)
	at net.imagej.launcher.ClassLauncher.main(ClassLauncher.java:89)
Caused by: java.lang.IllegalArgumentException: No such class: MacAdapter
	at net.imagej.patcher.CodeHacker.getClass(CodeHacker.java:878)
	at net.imagej.patcher.CodeHacker.getMethod(CodeHacker.java:904)
	at net.imagej.patcher.CodeHacker.getBehavior(CodeHacker.java:894)
	at net.imagej.patcher.CodeHacker.insertAtTopOfMethod(CodeHacker.java:157)
	... 32 more
Caused by: javassist.NotFoundException: MacAdapter
	at javassist.ClassPool.get(ClassPool.java:430)
	at net.imagej.patcher.CodeHacker.getClass(CodeHacker.java:873)
	... 35 more
[ERROR] Invalid service: net.imagej.legacy.LegacyService
java.lang.VerifyError: Expecting a stack map frame
Exception Details:
  Location:
    ij/IJ.getClassLoader()Ljava/lang/ClassLoader; @176: nop
  Reason:
    Expected stackmap frame at this location.
  Bytecode:
    0x0000000: b20b 6001 a600 24b8 005a b60b 63b3 0b60
    0x0000010: b20b 6004 b80b 674b 2a01 a500 0eb8 005a
    0x0000020: 2ab6 0b1f 2ab3 0b60 b20b 60b0 0000 00a7
    0x0000030: fffd 0000 0000 00a7 fffb 0000 0000 0000
    0x0000040: 0000 0000 0000 0000 0000 0000 a7ff ee00
    0x0000050: 0000 0000 0000 a7ff f9a7 0000 0000 a7ff
    0x0000060: fe00 0000 00a7 fffc 0000 0000 0000 00a7
    0x0000070: fff9 0000 0000 0000 0000 0000 0000 0000
    0x0000080: 0000 0000 a7ff ee00 0000 0000 0000 0000
    0x0000090: 0000 0000 0000 0000 0000 0000 0000 0000
    0x00000a0: 0000 0000 0000 0000 0000 0000 00a7 ffda
    0x00000b0: 00bf 00a7 ffff 0000 0000 a7ff fc00 0000
    0x00000c0: a7ff fd00 0000 0000 0000 0000 0000 00a7
    0x00000d0: fff4 0000 0000 0000 0000 a7ff f800 a7ff
    0x00000e0: ff                                     
  Stackmap Table:
    same_frame(@40)
    same_frame(@44)
    same_frame(@50)
    same_frame(@58)
    same_frame(@79)
    same_frame(@89)
    same_frame(@92)
    same_frame(@97)
    same_frame(@104)
    same_frame(@114)
    same_frame(@135)
    same_frame(@178)
    same_frame(@182)
    same_frame(@189)
    same_frame(@195)
    same_frame(@210)
    same_frame(@221)

	at java.lang.Class.getDeclaredFields0(Native Method)
	at java.lang.Class.privateGetDeclaredFields(Class.java:2583)
	at java.lang.Class.getField0(Class.java:2975)
	at java.lang.Class.getField(Class.java:1701)
	at net.imagej.patcher.LegacyEnvironment.initialize(LegacyEnvironment.java:104)
	at net.imagej.patcher.LegacyEnvironment.applyPatches(LegacyEnvironment.java:494)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:395)
	at net.imagej.patcher.LegacyInjector.preinit(LegacyInjector.java:374)
	at net.imagej.legacy.LegacyService.<clinit>(LegacyService.java:141)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at org.scijava.service.ServiceHelper.createServiceRecursively(ServiceHelper.java:300)
	at org.scijava.service.ServiceHelper.createExactService(ServiceHelper.java:267)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:229)
	at org.scijava.service.ServiceHelper.loadService(ServiceHelper.java:192)
	at org.scijava.service.ServiceHelper.loadServices(ServiceHelper.java:164)
	at org.scijava.Context.<init>(Context.java:278)
	at org.scijava.Context.<init>(Context.java:234)
	at org.scijava.Context.<init>(Context.java:174)
	at org.scijava.Context.<init>(Context.java:160)
	at net.imagej.ImageJ.<init>(ImageJ.java:77)
	at net.imagej.Main.main(Main.java:54)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.imagej.launcher.ClassLauncher.launch(ClassLauncher.java:291)
	at net.imagej.launcher.ClassLauncher.run(ClassLauncher.java:198)
	at net.imagej.launcher.ClassLauncher.main(ClassLauncher.java:89)
[ERROR] No match: net.imagej.legacy.LegacyService
[ERROR] Exception during event handling:
	[Event] org.scijava.service.event.ServicesLoadedEvent
	context = org.scijava.Context@2e6140
	consumed = false
	[Subscriber] sc.fiji.compat.DefaultFijiService [priority = 0.0]
	[Method] protected void sc.fiji.compat.DefaultFijiService.onEvent(org.scijava.service.event.ServicesLoadedEvent)
java.lang.VerifyError: Expecting a stack map frame
Exception Details:
  Location:
    ij/IJ.getClassLoader()Ljava/lang/ClassLoader; @176: nop
  Reason:
    Expected stackmap frame at this location.
  Bytecode:
    0x0000000: b20b 6001 a600 24b8 005a b60b 63b3 0b60
    0x0000010: b20b 6004 b80b 674b 2a01 a500 0eb8 005a
    0x0000020: 2ab6 0b1f 2ab3 0b60 b20b 60b0 0000 00a7
    0x0000030: fffd 0000 0000 00a7 fffb 0000 0000 0000
    0x0000040: 0000 0000 0000 0000 0000 0000 a7ff ee00
    0x0000050: 0000 0000 0000 a7ff f9a7 0000 0000 a7ff
    0x0000060: fe00 0000 00a7 fffc 0000 0000 0000 00a7
    0x0000070: fff9 0000 0000 0000 0000 0000 0000 0000
    0x0000080: 0000 0000 a7ff ee00 0000 0000 0000 0000
    0x0000090: 0000 0000 0000 0000 0000 0000 0000 0000
    0x00000a0: 0000 0000 0000 0000 0000 0000 00a7 ffda
    0x00000b0: 00bf 00a7 ffff 0000 0000 a7ff fc00 0000
    0x00000c0: a7ff fd00 0000 0000 0000 0000 0000 00a7
    0x00000d0: fff4 0000 0000 0000 0000 a7ff f800 a7ff
    0x00000e0: ff                                     
  Stackmap Table:
    same_frame(@40)
    same_frame(@44)
    same_frame(@50)
    same_frame(@58)
    same_frame(@79)
    same_frame(@89)
    same_frame(@92)
    same_frame(@97)
    same_frame(@104)
    same_frame(@114)
    same_frame(@135)
    same_frame(@178)
    same_frame(@182)
    same_frame(@189)
    same_frame(@195)
    same_frame(@210)
    same_frame(@221)

	at sc.fiji.compat.DefaultFijiService.actuallyInitialize(DefaultFijiService.java:54)
	at sc.fiji.compat.DefaultFijiService.onEvent(DefaultFijiService.java:77)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.scijava.event.DefaultEventService$ProxySubscriber.onEvent(DefaultEventService.java:298)
	at org.scijava.event.DefaultEventService$ProxySubscriber.onEvent(DefaultEventService.java:272)
	at org.bushe.swing.event.ThreadSafeEventService.publish(ThreadSafeEventService.java:971)
	at org.scijava.event.DefaultEventBus.access$201(DefaultEventBus.java:54)
	at org.scijava.event.DefaultEventBus$2.run(DefaultEventBus.java:214)
	at org.scijava.thread.DefaultThreadService.lambda$wrap$1(DefaultThreadService.java:211)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
[ERROR] java.lang.IllegalArgumentException: Required service is missing: net.imagej.legacy.LegacyService
Context: org.scijava.Context@2e6140
ClassLoader: sun.misc.Launcher$AppClassLoader@764c12b6

-- Services known to context --
org.scijava.event.DefaultEventService [priority = 100000.0]
net.imagej.legacy.display.LegacyImageDisplayService [priority = 100.0]
net.imagej.lut.DefaultLUTService [priority = 100.0]
fiji.plugin.trackmate.TrackMateService [priority = 0.0]
io.scif.DefaultMetadataService [priority = 0.0]
io.scif.codec.DefaultCodecService [priority = 0.0]
io.scif.formats.qt.DefaultQTJavaService [priority = 0.0]
io.scif.formats.tiff.DefaultTiffService [priority = 0.0]
io.scif.gui.DefaultGUIService [priority = 0.0]
io.scif.img.DefaultImgUtilityService [priority = 0.0]
io.scif.img.converters.DefaultPlaneConverterService [priority = 0.0]
io.scif.ome.services.DefaultOMEMetadataService [priority = 0.0]
io.scif.ome.services.DefaultOMEXMLService [priority = 0.0]
io.scif.refs.DefaultRefManagerService [priority = 0.0]
io.scif.services.DefaultDatasetIOService [priority = 0.0]
io.scif.services.DefaultFilePatternService [priority = 0.0]
io.scif.services.DefaultFormatService [priority = 0.0]
io.scif.services.DefaultTranslatorService [priority = 0.0]
io.scif.services.JAIIIOServiceImpl [priority = 0.0]
io.scif.xml.DefaultXMLService [priority = 0.0]
net.imagej.DefaultDatasetService [priority = 0.0]
net.imagej.DefaultImgPlusService [priority = 0.0]
net.imagej.animation.DefaultAnimationService [priority = 0.0]
net.imagej.autoscale.DefaultAutoscaleService [priority = 0.0]
net.imagej.display.DefaultImageDisplayService [priority = 0.0]
net.imagej.display.DefaultOverlayService [priority = 0.0]
net.imagej.display.DefaultWindowService [priority = 0.0]
net.imagej.display.DefaultZoomService [priority = 0.0]
net.imagej.legacy.plugin.MacroExtensionAutoCompletionService [priority = 0.0]
net.imagej.measure.DefaultMeasurementService [priority = 0.0]
net.imagej.measure.DefaultStatisticsService [priority = 0.0]
net.imagej.notebook.DefaultNotebookService [priority = 0.0]
net.imagej.operator.DefaultCalculatorService [priority = 0.0]
net.imagej.ops.DefaultNamespaceService [priority = 0.0]
net.imagej.ops.DefaultOpMatchingService [priority = 0.0]
net.imagej.ops.DefaultOpService [priority = 0.0]
net.imagej.roi.DefaultROIService [priority = 0.0]
net.imagej.sampler.DefaultSamplerService [priority = 0.0]
net.imagej.table.DefaultTableService [priority = 0.0]
net.imagej.threshold.DefaultThresholdService [priority = 0.0]
net.imagej.types.DefaultDataTypeService [priority = 0.0]
net.imagej.ui.DefaultImageJUIService [priority = 0.0]
net.imagej.ui.awt.AWTRenderingService [priority = 0.0]
net.imagej.ui.awt.AWTScreenCaptureService [priority = 0.0]
net.imagej.ui.swing.ops.DefaultOpFinderService [priority = 0.0]
net.imagej.ui.swing.overlay.JHotDrawService [priority = 0.0]
net.imagej.units.DefaultUnitService [priority = 0.0]
net.imagej.updater.DefaultUpdateService [priority = 0.0]
net.imagej.updater.DefaultUploaderService [priority = 0.0]
org.scijava.app.DefaultAppService [priority = 0.0]
org.scijava.app.DefaultStatusService [priority = 0.0]
org.scijava.command.DefaultCommandService [priority = 0.0]
org.scijava.console.DefaultConsoleService [priority = 0.0]
org.scijava.convert.DefaultConvertService [priority = 0.0]
org.scijava.display.DefaultDisplayService [priority = 0.0]
org.scijava.download.DefaultDownloadService [priority = 0.0]
org.scijava.event.DefaultEventHistory [priority = 0.0]
org.scijava.input.DefaultInputService [priority = 0.0]
org.scijava.io.DefaultIOService [priority = 0.0]
org.scijava.io.DefaultRecentFileService [priority = 0.0]
org.scijava.io.handle.DefaultDataHandleService [priority = 0.0]
org.scijava.io.location.DefaultLocationService [priority = 0.0]
org.scijava.io.nio.DefaultNIOService [priority = 0.0]
org.scijava.main.DefaultMainService [priority = 0.0]
org.scijava.menu.DefaultMenuService [priority = 0.0]
org.scijava.module.DefaultModuleService [priority = 0.0]
org.scijava.object.DefaultObjectService [priority = 0.0]
org.scijava.options.DefaultOptionsService [priority = 0.0]
org.scijava.parse.DefaultParseService [priority = 0.0]
org.scijava.platform.DefaultPlatformService [priority = 0.0]
org.scijava.plugin.DefaultPluginService [priority = 0.0]
org.scijava.prefs.DefaultPrefService [priority = 0.0]
org.scijava.run.DefaultRunService [priority = 0.0]
org.scijava.script.DefaultScriptHeaderService [priority = 0.0]
org.scijava.script.DefaultScriptService [priority = 0.0]
org.scijava.script.process.DefaultScriptProcessorService [priority = 0.0]
org.scijava.search.DefaultSearchService [priority = 0.0]
org.scijava.search.javadoc.DefaultJavadocService [priority = 0.0]
org.scijava.startup.DefaultStartupService [priority = 0.0]
org.scijava.table.io.DefaultTableIOService [priority = 0.0]
org.scijava.task.DefaultTaskService [priority = 0.0]
org.scijava.text.DefaultTextService [priority = 0.0]
org.scijava.thread.DefaultThreadService [priority = 0.0]
org.scijava.tool.DefaultToolService [priority = 0.0]
org.scijava.ui.DefaultUIService [priority = 0.0]
org.scijava.ui.dnd.DefaultDragAndDropService [priority = 0.0]
org.scijava.ui.swing.SwingIconService [priority = 0.0]
org.scijava.ui.swing.script.DefaultLanguageSupportService [priority = 0.0]
org.scijava.welcome.DefaultWelcomeService [priority = 0.0]
org.scijava.widget.DefaultWidgetService [priority = 0.0]
sc.fiji.compat.DefaultFijiService [priority = 0.0]
io.scif.services.DefaultInitializeService [priority = -100.0]
net.imagej.display.DummyScreenCaptureService [priority = -100.0]
net.imagej.render.DummyRenderingService [priority = -100.0]
org.scijava.batch.FileBatchService [priority = -100.0]
org.scijava.log.StderrLogService [priority = -100.0]
org.scijava.platform.DefaultAppEventService [priority = -100.0]
org.scijava.cache.DefaultCacheService [priority = -10000.0]

-- Classpath of ClassLoader --
/Applications/Fiji.app/jars/imagej-launcher-5.0.3.jar
/Applications/Fiji.app/jars/ahocorasick-0.2.4.jar
<snip>

	at org.scijava.Context.inject(Context.java:483)
	at org.scijava.Context.inject(Context.java:383)
	at org.scijava.plugin.DefaultPluginService.createInstance(DefaultPluginService.java:235)
	at org.scijava.ui.DefaultUIService.discoverUIs(DefaultUIService.java:504)
	at org.scijava.ui.DefaultUIService.getDefaultUI(DefaultUIService.java:191)
	at org.scijava.ui.DefaultUIService.showUI(DefaultUIService.java:137)
	at org.scijava.AbstractGateway.launch(AbstractGateway.java:110)
	at net.imagej.Main.main(Main.java:55)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.imagej.launcher.ClassLauncher.launch(ClassLauncher.java:291)
	at net.imagej.launcher.ClassLauncher.run(ClassLauncher.java:198)
	at net.imagej.launcher.ClassLauncher.main(ClassLauncher.java:89)
Error while executing the main() method of class 'net.imagej.Main':
java.lang.NullPointerException
	at net.imagej.legacy.ui.LegacyUI.ij1Helper(LegacyUI.java:119)
	at net.imagej.legacy.ui.LegacyUI.show(LegacyUI.java:130)
	at org.scijava.ui.DefaultUIService.showUI(DefaultUIService.java:158)
	at org.scijava.ui.DefaultUIService.showUI(DefaultUIService.java:143)
	at org.scijava.AbstractGateway.launch(AbstractGateway.java:110)
	at net.imagej.Main.main(Main.java:55)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.imagej.launcher.ClassLauncher.launch(ClassLauncher.java:291)
	at net.imagej.launcher.ClassLauncher.run(ClassLauncher.java:198)
	at net.imagej.launcher.ClassLauncher.main(ClassLauncher.java:89)
2 Likes

Thanks @Wayne for reporting this here.

I opened an issue here to track this:


The ij1-patcher project (i.e. the component that allows ImageJ1 to be run in headless mode at all) currently (at version 1.1.0) targets ij.jar-1.53b and earlier, and doesn’t account for any later changes that break headless compatibility.

My pull request from June that at least accounted for changes until 1.53d was not merged yet (and still has some issues):

Unfortunately, no one else in the community had time to look into it and make the effort to keep Fiji running with ongoing breaking changes in the ImageJ1 codebase.

So for Fiji users, I would still highly recommend to not use any daily builds of ImageJ1, and stick with the version of ij.jar that is distributed by the core update site.

For Fiji developers whose plugins rely on functionality introduced in later versions of ij.jar, I’d urge you to contribute to the efforts in keeping ij1-patcher up to date.

1 Like

Hi @imagejan,

Thanks for looking into this problem. Could you remind my what I need to do to find the souce for classes like net.imagej.patcher.CodeHacker. I might be able to work around this problem if I could see the CodeHacker source.

Fiji users will need to upgrade to the daily build to run Jerome Mutterer’s awesome “Colors of 2021” animation, available in the Help>Examples>Macro menu.

2 Likes

The source code for the net.imagej.patcher classes is at

3 Likes

Fiji failed to launch after upgrading to the daily build (1.53h17 and later) because ij.jar was built for Java 8. The current daily build (1.53h25), built for Java 6, does not cause this problem.

4 Likes

If you broke your installation trying to reproduce errors in this thread as I did, you can fix it by removing ij-1.5xy.jar from Fiji.app/jars/ and replacing it by the ij.jar daily build here
J.