Uploaded image for project: 'WINDUP - Red Hat Application Migration Toolkit'
  1. WINDUP - Red Hat Application Migration Toolkit
  2. WINDUP-1278

Migration code from ASM 4 to 5 for using java 8

    XMLWordPrintable

Details

    • Task
    • Resolution: Done
    • Major
    • None
    • 3.0.0.Alpha1, 3.0.0.CR1
    • None
    • None

    Description

      Using current Windup 3.0.0-SNAPSHOT with java 8 runtime can result in exception like:

       INVOKESPECIAL/STATIC on interfaces require ASM 5: java.lang.IllegalArgumentException: INVOKESPECIAL/STATIC on interfaces require ASM 5
                      at org.objectweb.asm.MethodVisitor.visitMethodInsn(Unknown Source)
                      at org.objectweb.asm.ClassReader.a(Unknown Source)
                      at org.objectweb.asm.ClassReader.b(Unknown Source)
                      at org.objectweb.asm.ClassReader.accept(Unknown Source)
                      at org.objectweb.asm.ClassReader.accept(Unknown Source)
                      at org.jboss.windup.rules.apps.java.decompiler.ClassFilePreDecompilationScan.filterClassesToDecompile(ClassFilePreDecompilationScan.java:127) [:3.0.0-SNAPSHOT]
                      at org.jboss.windup.rules.apps.java.decompiler.ClassFilePreDecompilationScan.perform(ClassFilePreDecompilationScan.java:160) [:3.0.0-SNAPSHOT]
                      at org.jboss.windup.rules.apps.java.decompiler.ClassFilePreDecompilationScan.perform(ClassFilePreDecompilationScan.java:33) [:3.0.0-SNAPSHOT]
                      at org.jboss.windup.config.operation.iteration.AbstractIterationOperation.perform(AbstractIterationOperation.java:65) [windup-config-api-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at org.jboss.windup.config.operation.GraphOperation.perform(GraphOperation.java:24) [windup-config-api-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at org.jboss.windup.config.operation.Iteration.perform(Iteration.java:267) [windup-config-api-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at org.jboss.windup.config.operation.Iteration.perform(Iteration.java:207) [windup-config-api-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at org.ocpsoft.rewrite.config.RuleBuilder.perform(RuleBuilder.java:168) [rewrite-api-3.0.0.Alpha9-jboss.jar:3.0.0.Alpha9-jboss]
                      at org.jboss.windup.config.RuleSubset.perform(RuleSubset.java:289) [windup-config-api-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at org.jboss.windup.exec.WindupProcessorImpl.execute(WindupProcessorImpl.java:171) [windup-exec-impl-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_112]
                      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_112]
                      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_112]
                      at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_112]
                      at org.jboss.forge.furnace.proxy.ClassLoaderInterceptor$1.call(ClassLoaderInterceptor.java:87) [furnace-proxy-2.24.3.Final.jar:2.24.3.Final]
                      at org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:42) [furnace-api-2.24.3.Final.jar:2.24.3.Final]
                      at org.jboss.forge.furnace.proxy.ClassLoaderInterceptor.invoke(ClassLoaderInterceptor.java:103) [furnace-proxy-2.24.3.Final.jar:2.24.3.Final]
                      at org.jboss.windup.exec.WindupProcessorImpl_$$_javassist_bb480353-01f6-4aa6-bf31-4cf116fd6d01.execute(WindupProcessorImpl_$$_javassist_bb480353-01f6-4aa6-bf31-4cf116fd6d01.java) [windup-exec-impl-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_112]
                      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_112]
                      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_112]
                      at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_112]
                      at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$2.call(ClassLoaderAdapterCallback.java:124) [furnace-proxy-2.24.3.Final.jar:2.24.3.Final]
                      at org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:42) [furnace-api-2.24.3.Final.jar:2.24.3.Final]
                      at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.invoke(ClassLoaderAdapterCallback.java:97) [furnace-proxy-2.24.3.Final.jar:2.24.3.Final]
                      at org.jboss.windup.exec.WindupProcessor_$$_javassist_a8655f7d-2662-4937-b9ec-84589599a993.execute(WindupProcessor_$$_javassist_a8655f7d-2662-4937-b9ec-84589599a993.java) [windup-exec-api-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at org.jboss.windup.bootstrap.commands.windup.RunWindupCommand.runWindup(RunWindupCommand.java:260) [windup-bootstrap-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at org.jboss.windup.bootstrap.commands.windup.RunWindupCommand.execute(RunWindupCommand.java:73) [windup-bootstrap-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at org.jboss.windup.bootstrap.Bootstrap.executePhase(Bootstrap.java:454) [windup-bootstrap-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at org.jboss.windup.bootstrap.Bootstrap.run(Bootstrap.java:319) [windup-bootstrap-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
                      at org.jboss.windup.bootstrap.Bootstrap.main(Bootstrap.java:100) [windup-bootstrap-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
      

      We need to migrate our ASM usage from 4 to 5 code as we already use ASM 5 as dependency. Unofficial Migration guide link from a blog - http://movingfulcrum.tumblr.com/post/80826553604/asm-framework-50-the-missing-migration-guide

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              mnovotny@redhat.com Marek Novotny
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: