```diff diff --git a/core/src/main/java/org/jruby/javasupport/binding/Initializer.java b/core/src/main/java/org/jruby/javasupport/binding/Initializer.java index 70146e5171..5e2834b9d3 100644 --- a/core/src/main/java/org/jruby/javasupport/binding/Initializer.java +++ b/core/src/main/java/org/jruby/javasupport/binding/Initializer.java @@ -489,7 +489,9 @@ public abstract class Initializer { for ( Class klass = javaClass; klass != null; klass = klass.getSuperclass() ) { // only add class's methods if it's public or we can set accessible // (see JRUBY-4799) - if (Modifier.isPublic(klass.getModifiers()) || JavaUtil.CAN_SET_ACCESSIBLE) { + if (Modifier.isPublic(klass.getModifiers()) + || JavaUtil.CAN_SET_ACCESSIBLE + || Modules.getModule(klass).isOpen(klass.getPackage().getName(), Modules.getModule(Ruby.class))) { // for each class, scan declared methods for new signatures try { // add methods, including static if this is the actual class, ```