private Class oldFindClass(String name) throws ClassNotFoundException { return super.findClass(name); }
@Override protected Class<?> findClass(String name) throws ClassNotFoundException { try { return super.findClass(name); } catch (ClassNotFoundException e) { return mDefaultClassloader.findClass(name); } }
@Override protected Class<?> findClass(String name) throws ClassNotFoundException { if (paths.isEmpty()) { addPaths(System.getProperty("user.dir")); } return super.findClass(name); } }
@Override protected Class<?> findClass(String name) throws ClassNotFoundException { // System.out.println(this+" being asked to find class "+name); return super.findClass(name); }
$ sbt clean run [info] Set current project to default-cd5534 (in build file:/tmp/so/) [success] Total time: 0 s, completed 27.10.2013 14:31:43 [info] Updating {file:/tmp/so/}default-cd5534... [info] Resolving org.fusesource.jansi#jansi;1.4 ... [info] Done updating. [info] Compiling 1 Scala source to /tmp/so/target/scala-2.10/classes... [info] Running Main [error] (run-main) java.lang.UnsupportedClassVersionError: Main : Unsupported major.minor version 51.0 java.lang.UnsupportedClassVersionError: Main : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:634) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at java.lang.ClassLoader.loadClass(ClassLoader.java:314) [trace] Stack trace suppressed: run last compile:run for the full output. java.lang.RuntimeException: Nonzero exit code: 1 at scala.sys.package$.error(package.scala:27) [trace] Stack trace suppressed: run last compile:run for the full output. [error] (compile:run) Nonzero exit code: 1 [error] Total time: 4 s, completed 27.10.2013 14:31:47
@Override protected Class<?> findClass(String name) throws ClassNotFoundException { return super.findClass(name); }
@Override public Class<?> loadClass(String name) throws ClassNotFoundException { if (name.startsWith(concurrentPackage) // Use other classloader for ListenableFuture, so that the objects can interact && !ListenableFuture.class.getName().equals(name)) { synchronized (loadedClasses) { Class<?> toReturn = loadedClasses.get(name); if (toReturn == null) { toReturn = super.findClass(name); loadedClasses.put(name, toReturn); } return toReturn; } } return super.loadClass(name); } };
@Override protected Class<?> findClass(final String name) throws ClassNotFoundException { if (_transformers.isEmpty()) { return super.findClass(name); } String path = name.replace('.', '/').concat(".class"); URL url = findResource(path); if (url==null) throw new ClassNotFoundException(name); return foundClass(name,url); }
@Override public Class<?> loadClass(String name) throws ClassNotFoundException { if (disallowedClassNames.contains(name)) { throw new ClassNotFoundException("I'm sorry Dave, I'm afraid I can't do that."); } if (name.startsWith(concurrentPackage)) { Class<?> c = findLoadedClass(name); if (c == null) { return super.findClass(name); } return c; } return super.loadClass(name); } };
@Override public Class<?> loadClass(String name) throws ClassNotFoundException { if (blocklist.contains(name)) { throw new ClassNotFoundException("I'm sorry Dave, I'm afraid I can't do that."); } if (name.startsWith(concurrentPackage)) { Class<?> c = findLoadedClass(name); if (c == null) { return super.findClass(name); } return c; } return super.loadClass(name); } };
/** {@inheritDoc} */ @Override protected Class<?> findClass(String name) throws ClassNotFoundException { for (String s : excludeClassNames) if (s.equals(name)) throw new ClassNotFoundException(name); return super.findClass(name); }
Class<?> findClass(String name, boolean checkGlobal) throws ClassNotFoundException { if (name.startsWith("org.bukkit.") || name.startsWith("net.minecraft.")) { throw new ClassNotFoundException(name); } Class<?> result = classes.get(name); if (result == null) { if (checkGlobal) { result = loader.getClassByName(name); } if (result == null) { result = super.findClass(name); if (result != null) { loader.setClass(name, result); } } classes.put(name, result); } return result; }
@Override public Class<?> findClass(final String name) throws ClassNotFoundException { try { final Class<?> loaded = super.findLoadedClass(name); if (loaded != null) { return loaded; } // first try to use the URLClassLoader findClass return super.findClass(name); } catch (final ClassNotFoundException e) { // if that fails, we ask our real parent classloader to load the class (we give up) return this.realParent.loadClass(name); } } }
protected Class<?> foundClass(final String name, URL url) throws ClassNotFoundException return super.findClass(name);
klazz = super.findClass(name); cachedClasses.put(name, klazz); return klazz;
@Override public Class<?> findClass(String name) throws ClassNotFoundException { try{ // first try to use the URLClassLoader findClass return super.findClass(name); } catch( ClassNotFoundException e ) { // if that fails, we ask our real parent class loader to load the class (we give up) return realParent.loadClass(name); } } }
public Class<?> findLocalClass(String name) throws ClassNotFoundException { synchronized (getClassLoadingLock(name)) { Class<?> result = findLoadedClass(name); if (result != null) { return result; } return super.findClass(name); } }
@Override public Class<?> loadClass(final String name) throws ClassNotFoundException { if (name.startsWith("com.eclipsesource.v8")) { return super.findClass(name); } return super.loadClass(name); } }
@Override protected Class<?> findClass(String name) throws ClassNotFoundException { String path = name.replace('.', '/').concat(".class"); final ClassLoaderFile file = this.updatedFiles.getFile(path); if (file == null) { return super.findClass(name); } if (file.getKind() == Kind.DELETED) { throw new ClassNotFoundException(name); } return AccessController.doPrivileged((PrivilegedAction<Class<?>>) () -> { byte[] bytes = file.getContents(); return defineClass(name, bytes, 0, bytes.length); }); }