private ClassSignature loadClassFromJigsaw(String classname) throws IOException {
  if (method_Class_getModule == null || method_Module_getName == null) {
    return null;
  }
  final Class<?> clazz;
  final String moduleName;
  try {
    clazz=Class.forName(classname,false,loader);
    final Object module=method_Class_getModule.invoke(clazz);
    moduleName=(String)method_Module_getName.invoke(module);
  }
 catch (  Exception e) {
    return null;
  }
  return new ClassSignature(clazz,AsmUtils.isRuntimeModule(moduleName));
}

private ClassSignature loadClassFromJigsaw ( String classname ) throws IOException { if ( method_Class_getModule == null || method_Module_getName == null ) { return null ; } final Class < ? > clazz ; final String moduleName ; try { clazz = Class . forName ( classname , false , loader ) ; final Object module = method_Class_getModule . invoke ( clazz ) ; moduleName = ( String ) method_Module_getName . invoke ( module ) ; } catch ( Exception e ) { return null ; } return new ClassSignature ( clazz , AsmUtils . isRuntimeModule ( moduleName ) ) ; }
loads the bytecode from java9 ' s module system . < p > this code is not guaranteed to work with final java 9 version . this is just for testing !
