File (Location location, @Nullable Iterable<URI> sources) { File dir = null; if (sources != null && location == StandardLocation.CLASS_OUTPUT) { for (URI uri : sources) { dir = getSingleOutputDirectory(location, uri); if (dir != null) { break; } } } if (dir == null) { dir = getSingleOutputDirectory(location, null); } return dir; }