From 5517d7eb3d9625d5a8e336c3cf19530e1362777a Mon Sep 17 00:00:00 2001 From: Gorbit99 Date: Tue, 31 Mar 2026 21:31:50 +0200 Subject: [PATCH] Swap classloader to Class.forName().getPackage() --- .../core/src/main/java/com/illposed/osc/LibraryInfo.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/modules/core/src/main/java/com/illposed/osc/LibraryInfo.java b/modules/core/src/main/java/com/illposed/osc/LibraryInfo.java index fd36da23..4f5de8df 100644 --- a/modules/core/src/main/java/com/illposed/osc/LibraryInfo.java +++ b/modules/core/src/main/java/com/illposed/osc/LibraryInfo.java @@ -42,9 +42,12 @@ public final class LibraryInfo { static { final Set tmpUninterestingPkgs = new HashSet<>(); - ClassLoader classLoader = LibraryInfo.class.getClassLoader(); - tmpUninterestingPkgs.add(classLoader.getDefinedPackage("java.lang")); - tmpUninterestingPkgs.add(classLoader.getDefinedPackage("java.util")); + try { + tmpUninterestingPkgs.add(Class.forName("java.lang.Object").getPackage()); + tmpUninterestingPkgs.add(Class.forName("java.util.List").getPackage()); + } catch (ClassNotFoundException ignored) { + // java.lang and java.util should always be present and loaded + } // NOTE We need to do it like this, because otherwise "java.awt" can not be found // by this classes class-loader. final Class javaAwtColorClass = getAwtColor();