[
https://issues.apache.org/jira/browse/FELIX-3568?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13406921#comment-13406921
]
Carsten Ziegeler commented on FELIX-3568:
-----------------------------------------
Thanks John.
I've updated trunk to use the latest asm (4.0) which is the first version
supporting java 7 - although it results in the same problem.
I get this exception:
Caused by: java.lang.RuntimeException: JSR/RET are not supported with
computeFrames option
at org.objectweb.asm.Frame.a(Unknown Source)
at org.objectweb.asm.MethodWriter.visitJumpInsn(Unknown Source)
at org.objectweb.asm.tree.JumpInsnNode.accept(Unknown Source)
at org.objectweb.asm.tree.InsnList.accept(Unknown Source)
at org.objectweb.asm.tree.MethodNode.accept(Unknown Source)
at org.objectweb.asm.tree.MethodNode.accept(Unknown Source)
at org.objectweb.asm.tree.ClassNode.accept(Unknown Source)
at
org.apache.felix.scrplugin.helper.ClassModifier.addMethods(ClassModifier.java:94)
Maybe someone has an idea how to change the bytecode generation?
> java.lang.VerifyError from bundles compiled with maven-scr-plugin (java 7)
> ---------------------------------------------------------------------------
>
> Key: FELIX-3568
> URL: https://issues.apache.org/jira/browse/FELIX-3568
> Project: Felix
> Issue Type: Bug
> Components: Maven SCR Plugin, SCR Annotations
> Affects Versions: maven-scr-plugin-1.7.4
> Environment: maven-scr-plugin 1.7.4
> Java(TM) SE Runtime Environment (build 1.7.0_04-b21) (oracle/mac os)
> org.apache.felix.scr-1.6.0.jar
> Apache Karaf (2.2.7)
> Reporter: John Hawksley
> Assignee: Carsten Ziegeler
> Fix For: maven-scr-plugin-1.8.0, scr ant task 1.2.0, scr
> generator 1.2.0
>
>
> A bundle compiled by javac 1.7.0, using maven-scr-plugin 1.7.4, seems to
> raise a VerifyError when SCR attempts to reflect out the generated
> constructors.
> java.lang.VerifyError: Expecting a stackmap frame at branch target 13 in
> method
> com.intergral.storm.pqs.internal.PersistentQueueComponent.unbindBus(Lorg/osgi/service/event/EventAdmin;)V
> at offset 5
> at java.lang.Class.getDeclaredConstructors0(Native Method)[:1.7.0_04]
> at
> java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)[:1.7.0_04]
> at java.lang.Class.getConstructor0(Class.java:2714)[:1.7.0_04]
> at java.lang.Class.newInstance0(Class.java:343)[:1.7.0_04]
> at java.lang.Class.newInstance(Class.java:325)[:1.7.0_04]
> at
> org.apache.felix.scr.impl.manager.ImmediateComponentManager.createImplementationObject(ImmediateComponentManager.java:183)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.scr.impl.manager.ImmediateComponentManager.createComponent(ImmediateComponentManager.java:118)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.scr.impl.manager.AbstractComponentManager$Unsatisfied.activate(AbstractComponentManager.java:997)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:333)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:157)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.scr.impl.config.ConfiguredComponentHolder.enableComponents(ConfiguredComponentHolder.java:256)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.scr.impl.BundleComponentActivator.loadDescriptor(BundleComponentActivator.java:253)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.scr.impl.BundleComponentActivator.initialize(BundleComponentActivator.java:147)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.scr.impl.BundleComponentActivator.<init>(BundleComponentActivator.java:111)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:285)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.scr.impl.Activator.bundleChanged(Activator.java:203)[55:org.apache.felix.scr:1.6.0]
> at
> org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:807)[org.apache.felix.framework-3.0.9.jar:]
> at
> org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:729)[org.apache.felix.framework-3.0.9.jar:]
> at
> org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:610)[org.apache.felix.framework-3.0.9.jar:]
> at
> org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3761)[org.apache.felix.framework-3.0.9.jar:]
> at
> org.apache.felix.framework.Felix.startBundle(Felix.java:1787)[org.apache.felix.framework-3.0.9.jar:]
> at
> org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1163)[org.apache.felix.framework-3.0.9.jar:]
> at
> org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:264)[org.apache.felix.framework-3.0.9.jar:]
> at java.lang.Thread.run(Thread.java:722)[:1.7.0_04]
> Workaround: applying the XX:-UseSplitVerifier option to the VM seems to stop
> this occurring.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira