in src/main/java/org/apache/maven/shared/verifier/util/ResourceExtractor.java [65:90]
public static File extractResourceToDestination(
Class<?> cl, String resourcePath, File destination, boolean alwaysExtract) throws IOException {
URL url = cl.getResource(resourcePath);
if (url == null) {
throw new IllegalArgumentException("Resource not found: " + resourcePath);
}
if ("jar".equalsIgnoreCase(url.getProtocol())) {
File jarFile = getJarFileFromUrl(url);
extractResourcePathFromJar(cl, jarFile, resourcePath, destination);
} else {
try {
File resourceFile = new File(new URI(url.toExternalForm()));
if (!alwaysExtract) {
return resourceFile;
}
if (resourceFile.isDirectory()) {
FileUtils.copyDirectoryStructure(resourceFile, destination);
} else {
FileUtils.copyFile(resourceFile, destination);
}
} catch (URISyntaxException e) {
throw new RuntimeException("Couldn't convert URL to File:" + url, e);
}
}
return destination;
}