Add support for source jars to `OverlayCompiler`.
This also implies adding that support to `TurbineTool`.
PiperOrigin-RevId: 532899495
diff --git a/java/com/google/turbine/main/Main.java b/java/com/google/turbine/main/Main.java
index 45b0538..9db97f4 100644
--- a/java/com/google/turbine/main/Main.java
+++ b/java/com/google/turbine/main/Main.java
@@ -267,7 +267,7 @@
/* processorPath= */ options.processorPath(),
/* builtinProcessors= */ options.builtinProcessors())),
bootclasspath,
- /* moduleVersion=*/ Optional.empty());
+ /* moduleVersion= */ Optional.empty());
}
private static void usage(TurbineOptions options) {
@@ -314,12 +314,17 @@
/** Parse all source files and source jars. */
// TODO(cushon): parallelize
private static ImmutableList<CompUnit> parseAll(TurbineOptions options) throws IOException {
+ return parseAll(options.sources(), options.sourceJars());
+ }
+
+ static ImmutableList<CompUnit> parseAll(Iterable<String> sources, Iterable<String> sourceJars)
+ throws IOException {
ImmutableList.Builder<CompUnit> units = ImmutableList.builder();
- for (String source : options.sources()) {
+ for (String source : sources) {
Path path = Paths.get(source);
units.add(Parser.parse(new SourceFile(source, MoreFiles.asCharSource(path, UTF_8).read())));
}
- for (String sourceJar : options.sourceJars()) {
+ for (String sourceJar : sourceJars) {
try (Zip.ZipIterable iterable = new Zip.ZipIterable(Paths.get(sourceJar))) {
for (Zip.Entry ze : iterable) {
if (ze.name().endsWith(".java")) {