protected Class<?> findClass(String name) throws ClassNotFoundException { try { String pathName = transformName(name); JarEntry jarEntry = tempJarFile.getJarEntry(pathName); if (jarEntry != null) { long size = jarEntry.getSize(); InputStream jarEntryInputStream = tempJarFile.getInputStream(jarEntry); ByteArrayOutputStream classBytesOutputStream = new ByteArrayOutputStream((int) size); FileUtil.copy(jarEntryInputStream, classBytesOutputStream, size); classBytesOutputStream.close(); jarEntryInputStream.close(); byte[] classBytes = classBytesOutputStream.toByteArray(); definePackage(name); Class<?> clazz = defineClass(name, classBytes, 0, classBytes.length); return clazz; } throw new ClassNotFoundException("could not find jar entry for class " + name); } catch (IOException e) {