private ArrayList<Class<?>> getClasses(String jarFile) throws IOException
    {
        jar = new JarFile(jarFile);

        Enumeration<JarEntry> entries = jar.entries();
        URL[] urls = { new URL("file:" + in) };
        classLoader = new URLClassLoader(urls);
        ArrayList<Class<?>> classes = new ArrayList<>();

        while(entries.hasMoreElements())
        {
            JarEntry entry = entries.nextElement();

            if(entry.isDirectory() || !entry.getName().endsWith(".class"))
            {
                System.out.println("Not a class: " + entry.getName());
                continue;
            }


            String className = entry.getName().substring(0, entry.getName().length() - 6);

            try {
                classes.add(classLoader.loadClass(className.replace('/', '.')));
            } catch (ClassNotFoundException e) {
                //e.printStackTrace();
                getPlugin().getLogger().severe(e.getMessage());
            }
        }

        return classes;
    }