diff -r dbf7c271d2c8 openide.util.lookup/src/org/openide/util/lookup/AbstractLookup.java --- a/openide.util.lookup/src/org/openide/util/lookup/AbstractLookup.java Sat Aug 15 05:22:50 2015 +0200 +++ b/openide.util.lookup/src/org/openide/util/lookup/AbstractLookup.java Sat Aug 15 13:43:35 2015 +0200 @@ -759,7 +759,15 @@ } private static ReferenceQueue activeQueue() { - return ActiveQueue.queue(); + try { + Class activeQueueClass = ClassLoader.getSystemClassLoader().loadClass("org.openide.util.lookup.implspi.ActiveQueue"); + java.lang.reflect.Method activeMethod = activeQueueClass.getDeclaredMethod("queue", (Class[]) null); + return (ReferenceQueue) activeMethod.invoke(null, (Object[]) null); + } catch (Exception ex) { + System.err.println("ARQ failed"); + Thread.dumpStack(); + return ActiveQueue.queue(); + } } /** Storage to keep the internal structure of Pairs and to answer diff -r dbf7c271d2c8 openide.util/src/org/openide/util/BaseUtilities.java --- a/openide.util/src/org/openide/util/BaseUtilities.java Sat Aug 15 05:22:50 2015 +0200 +++ b/openide.util/src/org/openide/util/BaseUtilities.java Sat Aug 15 13:43:35 2015 +0200 @@ -47,6 +47,7 @@ import java.io.IOException; import java.io.InputStreamReader; import java.lang.ref.ReferenceQueue; +import java.lang.reflect.Method; import java.net.URI; import java.net.URISyntaxException; import java.net.URL; @@ -226,7 +227,15 @@ * @since 3.11 */ public static ReferenceQueue activeReferenceQueue() { - return ActiveQueue.queue(); + try { + Class activeQueueClass = ClassLoader.getSystemClassLoader().loadClass("org.openide.util.lookup.implspi.ActiveQueue"); + Method activeMethod = activeQueueClass.getDeclaredMethod("queue", (Class[]) null); + return (ReferenceQueue) activeMethod.invoke(null, (Object[]) null); + } catch (Exception ex) { + System.err.println("ARQ failed"); + Thread.dumpStack(); + return ActiveQueue.queue(); + } } /** Get the operating system on which NetBeans is running.