Replace Commons IO NullOutputStream with custom impl

Fixes #302. The class was backported from 1.12
where Commons IO is not used at all.
This commit is contained in:
Juuz
2025-10-04 23:34:24 +03:00
parent fc47aa2171
commit 171f8bb16d
4 changed files with 35 additions and 5 deletions

View File

@@ -16,8 +16,8 @@ import java.util.function.BiConsumer;
import java.util.function.Predicate;
import dev.architectury.loom.forge.tool.ForgeToolExecutor;
import dev.architectury.loom.util.NullOutputStream;
import dev.architectury.loom.util.TempFiles;
import org.apache.commons.io.output.NullOutputStream;
import org.gradle.api.Project;
import org.gradle.api.file.ConfigurableFileCollection;
import org.gradle.api.logging.Logger;

View File

@@ -3,7 +3,7 @@ package dev.architectury.loom.forge.tool;
import java.util.Collection;
import java.util.List;
import org.apache.commons.io.output.NullOutputStream;
import dev.architectury.loom.util.NullOutputStream;
import org.gradle.api.Project;
import org.gradle.api.file.ConfigurableFileCollection;
import org.gradle.api.logging.LogLevel;

View File

@@ -0,0 +1,30 @@
package dev.architectury.loom.util;
import java.io.OutputStream;
public final class NullOutputStream extends OutputStream {
public static final NullOutputStream INSTANCE = new NullOutputStream();
private NullOutputStream() {
}
@Override
public void write(int b) {
// no-op
}
@Override
public void write(byte[] b) {
// no-op
}
@Override
public void write(byte[] b, int off, int len) {
// no-op
}
@Override
public void close() {
// no-op
}
}

View File

@@ -35,7 +35,7 @@ import java.util.HashMap;
import java.util.Map;
import com.google.common.base.Stopwatch;
import org.apache.commons.io.output.NullOutputStream;
import dev.architectury.loom.util.NullOutputStream;
import org.gradle.api.Project;
import org.gradle.api.logging.LogLevel;
import org.jetbrains.annotations.Nullable;
@@ -88,8 +88,8 @@ public class SrgProvider extends DependencyProvider {
PrintStream err = System.err;
if (getProject().getGradle().getStartParameter().getLogLevel().compareTo(LogLevel.LIFECYCLE) >= 0) {
System.setOut(new PrintStream(NullOutputStream.NULL_OUTPUT_STREAM));
System.setErr(new PrintStream(NullOutputStream.NULL_OUTPUT_STREAM));
System.setOut(new PrintStream(NullOutputStream.INSTANCE));
System.setErr(new PrintStream(NullOutputStream.INSTANCE));
}
Files.deleteIfExists(mergedMojangRaw);