Upgrade to XBean 4.17 (with ASM 8 support)
diff --git a/pom.xml b/pom.xml
index c400a19..f9d4631 100644
--- a/pom.xml
+++ b/pom.xml
@@ -40,7 +40,7 @@
<junit.version>5.6.1</junit.version>
<osgi.version>7.0.0</osgi.version>
<slf4j.version>1.7.30</slf4j.version>
- <xbean.version>4.16</xbean.version>
+ <xbean.version>4.17</xbean.version>
<surefire.log.level>INFO</surefire.log.level>
diff --git a/winegrower-core/src/main/java/org/apache/winegrower/scanner/manifest/HeaderManifestContributor.java b/winegrower-core/src/main/java/org/apache/winegrower/scanner/manifest/HeaderManifestContributor.java
index 1b70bd0..cae4442 100644
--- a/winegrower-core/src/main/java/org/apache/winegrower/scanner/manifest/HeaderManifestContributor.java
+++ b/winegrower-core/src/main/java/org/apache/winegrower/scanner/manifest/HeaderManifestContributor.java
@@ -14,10 +14,10 @@
package org.apache.winegrower.scanner.manifest;
import static java.util.stream.Collectors.toMap;
-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.asm7.Opcodes.ASM7;
+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;
+import static org.apache.xbean.asm8.Opcodes.ASM8;
import java.io.InputStream;
import java.lang.annotation.Annotation;
@@ -31,9 +31,9 @@
import java.util.jar.Manifest;
import java.util.stream.Stream;
-import org.apache.xbean.asm7.AnnotationVisitor;
-import org.apache.xbean.asm7.ClassReader;
-import org.apache.xbean.asm7.ClassVisitor;
+import org.apache.xbean.asm8.AnnotationVisitor;
+import org.apache.xbean.asm8.ClassReader;
+import org.apache.xbean.asm8.ClassVisitor;
import org.apache.xbean.finder.AnnotationFinder;
public class HeaderManifestContributor implements ManifestContributor {
@@ -80,7 +80,7 @@
try (final InputStream stream = loader.getResourceAsStream(clazz.getName().replace('.', '/') + ".class")) {
final ClassReader reader = new ClassReader(stream);
final Collection<KeyValue> headers = new ArrayList<>();
- final Supplier<AnnotationVisitor> newHeaderVisitor = () -> new AnnotationVisitor(ASM7) {
+ final Supplier<AnnotationVisitor> newHeaderVisitor = () -> new AnnotationVisitor(ASM8) {
private final KeyValue header = new KeyValue();
@Override
@@ -103,7 +103,7 @@
}
};
- reader.accept(new ClassVisitor(ASM7) {
+ reader.accept(new ClassVisitor(ASM8) {
@Override
public AnnotationVisitor visitAnnotation(final String descriptor, final boolean visible) {
switch (descriptor) {
@@ -140,7 +140,7 @@
private final Supplier<AnnotationVisitor> visitor;
private PluralAnnotationVisitor(final String singular, final Supplier<AnnotationVisitor> nestedVisitor) {
- super(ASM7);
+ super(ASM8);
this.visitor = nestedVisitor;
this.singular = singular;
}
@@ -149,7 +149,7 @@
public AnnotationVisitor visitArray(final String name) {
switch (name) {
case "value":
- return new AnnotationVisitor(ASM7) {
+ return new AnnotationVisitor(ASM8) {
@Override
public AnnotationVisitor visitAnnotation(final String name, final String descriptor) {
if (singular.equals(descriptor)) {
diff --git a/winegrower-extension/winegrower-build/winegrower-build-common/pom.xml b/winegrower-extension/winegrower-build/winegrower-build-common/pom.xml
index 78f8568..5ce5194 100644
--- a/winegrower-extension/winegrower-build/winegrower-build-common/pom.xml
+++ b/winegrower-extension/winegrower-build/winegrower-build-common/pom.xml
@@ -57,7 +57,7 @@
</dependency>
<dependency>
<groupId>org.apache.xbean</groupId>
- <artifactId>xbean-asm7-shaded</artifactId>
+ <artifactId>xbean-asm8-shaded</artifactId>
<version>${xbean.version}</version>
</dependency>
<dependency>