This is an automated email from the ASF dual-hosted git repository.
rmannibucau pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwebbeans.git
The following commit(s) were added to refs/heads/master by this push:
new 67bf3ec [OWB-1380] ensure annotated mode works with prescanned scanner
67bf3ec is described below
commit 67bf3ec0019bed9e1d0871f5bee135e2b8486cd7
Author: Romain Manni-Bucau <[email protected]>
AuthorDate: Wed Mar 17 15:28:34 2021 +0100
[OWB-1380] ensure annotated mode works with prescanned scanner
---
.../corespi/scanner/xbean/OwbAnnotationFinder.java | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git
a/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/OwbAnnotationFinder.java
b/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/OwbAnnotationFinder.java
index afd4e44..c3d358e 100644
---
a/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/OwbAnnotationFinder.java
+++
b/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/OwbAnnotationFinder.java
@@ -22,6 +22,7 @@ import org.apache.xbean.finder.AnnotationFinder;
import org.apache.xbean.finder.archive.Archive;
import org.apache.xbean.finder.archive.ClassesArchive;
+import java.lang.reflect.Field;
import java.util.stream.Stream;
/**
@@ -43,6 +44,19 @@ public class OwbAnnotationFinder extends AnnotationFinder
public OwbAnnotationFinder(final Class<?>[] classes)
{
super(new ClassesArchive(/*empty since we want to read from
reflection, not from resources*/));
+ try
+ {
+ final Field linking =
AnnotationFinder.class.getDeclaredField("linking");
+ if (!linking.isAccessible())
+ {
+ linking.setAccessible(true);
+ }
+ linking.set(this, true);
+ }
+ catch (final Exception e)
+ {
+ // ignore, will not affect all cases
+ }
Stream.of(classes).forEach(c -> super.readClassDef(c));
}