/** * Gathers all resources for api classes. */ private static ClassPath getAPIClassPath() throws IOException { ClassLoader classLoader = Flow.class.getClassLoader(); String resourceName = Flow.class.getName().replace('.', '/') + ".class"; URL url = classLoader.getResource(resourceName); if (url == null) { throw new IOException("Resource not found for " + resourceName); } try { URI classPathURI = getClassPathURL(resourceName, url).toURI(); return ClassPath.from(classPathURI, classLoader); } catch (URISyntaxException e) { throw new IOException(e); } }