Merge remote-tracking branch 'FabricMC/dev/0.8' into dev/0.8

This commit is contained in:
shedaniel
2021-06-03 23:18:37 +08:00
3 changed files with 66 additions and 2 deletions

View File

@@ -29,12 +29,19 @@ import java.util.Arrays;
import java.util.Collection;
import java.util.stream.Collectors;
public record MergedNestedJarProvider(NestedJarProvider... parents) implements NestedJarProvider {
import org.gradle.api.Project;
public record MergedNestedJarProvider(NestedJarProvider... children) implements NestedJarProvider {
@Override
public Collection<File> provide() {
return Arrays.stream(parents)
return Arrays.stream(children)
.map(NestedJarProvider::provide)
.flatMap(Collection::stream)
.collect(Collectors.toList());
}
@Override
public void prepare(Project project) {
Arrays.stream(children).forEach(nestedJarProvider -> nestedJarProvider.prepare(project));
}
}

View File

@@ -58,6 +58,8 @@ public final class NestedJarPathProvider implements NestedJarProvider {
}
private void validateFiles() {
Preconditions.checkNotNull(files, "null files to nest, was prepare called?");
for (File file : files) {
Preconditions.checkArgument(file.getName().endsWith(".jar"), String.format("Tried to nest %s but it is not a jar", file.getAbsolutePath()));
Preconditions.checkArgument(file.exists(), String.format("Tried to nest jar %s but it does not exist", file.getAbsolutePath()));