code: public boolean reloadIsModified()
    {
      if (_classIsModified) {
        return true;
      }
  
      if (! _hasJNIReload || ! _classPath.canRead()) {
        return true;
      }
      
      try {
        long length = _classPath.length();
  
        Class<?> cl = _clRef != null ? _clRef.get() : null;
  
        if (cl == null) {
          return false;
        }
  
        /*
        if (cl.isAnnotationPresent(RequireReload.class))
          return true;
          */
  
        byte []bytecode = new byte[(int) length];
        try (InputStream is = _classPath.inputStream()) {
          IoUtil.readAll(is, bytecode, 0, bytecode.length);
        }
  
        int result = reloadNative(cl, bytecode, 0, bytecode.length);
  
        if (result != 0) {
          _classIsModified = true;
          return true;
        }
  
        // XXX: setDependPath(_classPath);
  
        if (_sourcePath != null) {
          _sourceLastModified = _sourcePath.getLastModified();
          _sourceLength = _sourcePath.length();
        }
  
        log.info("Reloading " + cl.getName());
  
        return false;
      } catch (Exception e) {
        log.log(Level.WARNING, e.toString(), e);
        _classIsModified = true;
  
        return true;
      }
    }
docs: Returns true if the reload doesn't avoid the dependency.