OPENJPA-2811 asm8 support
diff --git a/openjpa-features/src/main/feature/feature.xml b/openjpa-features/src/main/feature/feature.xml
index 63b39c0..c3fc1c3 100644
--- a/openjpa-features/src/main/feature/feature.xml
+++ b/openjpa-features/src/main/feature/feature.xml
@@ -28,7 +28,7 @@
         <bundle dependency="true">mvn:org.apache.commons/commons-dbcp2/2.7.0</bundle>
         <bundle dependency="true">mvn:org.apache.commons/commons-collections4/4.4</bundle>
         <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.serp/1.14.1_1</bundle>
-        <bundle dependency="true">mvn:org.apache.xbean/xbean-asm7-shaded/${xbean.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.xbean/xbean-asm8-shaded/${xbean.version}</bundle>
         <bundle>mvn:org.apache.openjpa/openjpa/${project.version}</bundle>
         <capability>
             osgi.service;objectClass=javax.persistence.spi.PersistenceProvider;effective:=active;javax.persistence.provider=org.apache.openjpa.persistence.PersistenceProviderImpl
diff --git a/openjpa-junit5/src/main/java/org/apache/openjpa/junit5/internal/OpenJPADirectoriesEnhancer.java b/openjpa-junit5/src/main/java/org/apache/openjpa/junit5/internal/OpenJPADirectoriesEnhancer.java
index 7c62942..19b4419 100644
--- a/openjpa-junit5/src/main/java/org/apache/openjpa/junit5/internal/OpenJPADirectoriesEnhancer.java
+++ b/openjpa-junit5/src/main/java/org/apache/openjpa/junit5/internal/OpenJPADirectoriesEnhancer.java
@@ -27,10 +27,10 @@
 import org.apache.openjpa.lib.log.SLF4JLogFactory;
 import org.apache.openjpa.meta.MetaDataRepository;
 import org.apache.openjpa.persistence.PersistenceMetaDataFactory;
-import org.apache.xbean.asm7.AnnotationVisitor;
-import org.apache.xbean.asm7.ClassReader;
-import org.apache.xbean.asm7.Type;
-import org.apache.xbean.asm7.shade.commons.EmptyVisitor;
+import org.apache.xbean.asm8.AnnotationVisitor;
+import org.apache.xbean.asm8.ClassReader;
+import org.apache.xbean.asm8.Type;
+import org.apache.xbean.asm8.shade.commons.EmptyVisitor;
 import org.apache.xbean.finder.ClassLoaders;
 import serp.bytecode.BCClass;
 import serp.bytecode.Project;
@@ -57,9 +57,9 @@
 import java.util.stream.Stream;
 
 import static java.util.Arrays.asList;
-import static org.apache.xbean.asm7.ClassReader.SKIP_CODE;
-import static org.apache.xbean.asm7.ClassReader.SKIP_DEBUG;
-import static org.apache.xbean.asm7.ClassReader.SKIP_FRAMES;
+import static org.apache.xbean.asm8.ClassReader.SKIP_CODE;
+import static org.apache.xbean.asm8.ClassReader.SKIP_DEBUG;
+import static org.apache.xbean.asm8.ClassReader.SKIP_FRAMES;
 
 public class OpenJPADirectoriesEnhancer implements Runnable {
     private static final Logger LOGGER = Logger.getLogger(OpenJPADirectoriesEnhancer.class.getName());
diff --git a/openjpa-kernel/pom.xml b/openjpa-kernel/pom.xml
index 5a32849..5d97ccb 100644
--- a/openjpa-kernel/pom.xml
+++ b/openjpa-kernel/pom.xml
@@ -77,7 +77,7 @@
         </dependency>
         <dependency>
             <groupId>org.apache.xbean</groupId>
-            <artifactId>xbean-asm7-shaded</artifactId>
+            <artifactId>xbean-asm8-shaded</artifactId>
             <version>${xbean.version}</version>
         </dependency>
     </dependencies>
diff --git a/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/AsmAdaptor.java b/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/AsmAdaptor.java
index d3cfe03..7bef1ef 100644
--- a/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/AsmAdaptor.java
+++ b/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/AsmAdaptor.java
@@ -30,10 +30,10 @@
 import java.io.OutputStream;
 import java.net.URLDecoder;
 
-import org.apache.xbean.asm7.ClassReader;
-import org.apache.xbean.asm7.ClassVisitor;
-import org.apache.xbean.asm7.ClassWriter;
-import org.apache.xbean.asm7.Opcodes;
+import org.apache.xbean.asm8.ClassReader;
+import org.apache.xbean.asm8.ClassVisitor;
+import org.apache.xbean.asm8.ClassWriter;
+import org.apache.xbean.asm8.Opcodes;
 
 import serp.bytecode.BCClass;
 
@@ -117,7 +117,7 @@
         final ClassReader cr = new ClassReader(b);
         try
         {
-            cr.accept(new ClassVisitor(Opcodes.ASM7)
+            cr.accept(new ClassVisitor(Opcodes.ASM8)
             {
                 @Override
                 public void visit(final int i, final int i1,
diff --git a/openjpa-project/assembly.xml b/openjpa-project/assembly.xml
index e8e42db..ae8c21e 100644
--- a/openjpa-project/assembly.xml
+++ b/openjpa-project/assembly.xml
@@ -143,7 +143,7 @@
                 <include>org.apache.geronimo.specs:geronimo-jms_1.1_spec</include>
                 <include>org.apache.geronimo.specs:geronimo-validation_1.0_spec</include>
                 <include>org.apache.bval:org.apache.bval.bundle</include>
-                <include>org.apache.xbean:xbean-asm7-shaded</include>
+                <include>org.apache.xbean:xbean-asm8-shaded</include>
             </includes>
         </dependencySet>
     </dependencySets>
diff --git a/openjpa-project/bin-assembly.xml b/openjpa-project/bin-assembly.xml
index ff532ac..e4b99c3 100644
--- a/openjpa-project/bin-assembly.xml
+++ b/openjpa-project/bin-assembly.xml
@@ -82,7 +82,7 @@
                 <include>org.apache.geronimo.specs:geronimo-jms_1.1_spec</include>
                 <include>org.apache.geronimo.specs:geronimo-validation_1.0_spec</include>
                 <include>org.apache.bval:org.apache.bval.bundle</include>
-                <include>org.apache.xbean:xbean-asm7-shaded</include>
+                <include>org.apache.xbean:xbean-asm8-shaded</include>
             </includes>
         </dependencySet>
     </dependencySets>
diff --git a/pom.xml b/pom.xml
index 64997e0..701a7d8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -94,7 +94,7 @@
         <javadoc.additionalparam />
         <maven.surefire.version>3.0.0-M4</maven.surefire.version>
 
-        <xbean.version>4.16</xbean.version>
+        <xbean.version>4.17</xbean.version>
         <bval.version>1.1.2</bval.version>
         <jmock.version>2.9.0</jmock.version>
         <automatic-module-name>-SUBMODULES-NEED-TO-OVERRIDE-THIS-</automatic-module-name>