A DESCRIPTION OF THE PROBLEM :
See java.lang.Class.getTypeName():
public String getTypeName() {
if (isArray()) {
try {
Class<?> cl = this;
int dimensions = 0;
do {
dimensions++;
cl = cl.getComponentType();
} while (cl.isArray());
return cl.getName() + "[]".repeat(dimensions);
} catch (Throwable e) { /*FALLTHRU*/ }
}
return getName();
}
This should probably be removed because it might hide serious problems with the JVM. It appears this originates from java.lang.reflect.Field.getTypeName(Class<?>), from where it was moved by JDK-6298888.