mirror of
https://github.com/architectury/architectury-loom.git
synced 2026-04-02 05:27:43 -05:00
Add API to get named minecraft jars. (#1063)
This commit is contained in:
@@ -32,6 +32,7 @@ import org.gradle.api.NamedDomainObjectContainer;
|
||||
import org.gradle.api.NamedDomainObjectList;
|
||||
import org.gradle.api.artifacts.Dependency;
|
||||
import org.gradle.api.file.ConfigurableFileCollection;
|
||||
import org.gradle.api.file.FileCollection;
|
||||
import org.gradle.api.file.RegularFileProperty;
|
||||
import org.gradle.api.provider.ListProperty;
|
||||
import org.gradle.api.provider.Property;
|
||||
@@ -231,4 +232,9 @@ public interface LoomGradleExtensionAPI {
|
||||
* @return The minecraft version, as a {@link Provider}.
|
||||
*/
|
||||
Provider<String> getMinecraftVersion();
|
||||
|
||||
/**
|
||||
* @return A lazily evaluated {@link FileCollection} containing the named minecraft jars.
|
||||
*/
|
||||
FileCollection getNamedMinecraftJars();
|
||||
}
|
||||
|
||||
@@ -37,6 +37,7 @@ import org.gradle.api.Project;
|
||||
import org.gradle.api.UncheckedIOException;
|
||||
import org.gradle.api.artifacts.Dependency;
|
||||
import org.gradle.api.file.ConfigurableFileCollection;
|
||||
import org.gradle.api.file.FileCollection;
|
||||
import org.gradle.api.file.RegularFileProperty;
|
||||
import org.gradle.api.model.ObjectFactory;
|
||||
import org.gradle.api.provider.ListProperty;
|
||||
@@ -54,6 +55,7 @@ import net.fabricmc.loom.api.ModSettings;
|
||||
import net.fabricmc.loom.api.RemapConfigurationSettings;
|
||||
import net.fabricmc.loom.api.decompilers.DecompilerOptions;
|
||||
import net.fabricmc.loom.api.mappings.intermediate.IntermediateMappingsProvider;
|
||||
import net.fabricmc.loom.api.mappings.layered.MappingsNamespace;
|
||||
import net.fabricmc.loom.api.mappings.layered.spec.LayeredMappingSpecBuilder;
|
||||
import net.fabricmc.loom.api.processor.MinecraftJarProcessor;
|
||||
import net.fabricmc.loom.api.remapping.RemapperExtension;
|
||||
@@ -432,6 +434,13 @@ public abstract class LoomGradleExtensionApiImpl implements LoomGradleExtensionA
|
||||
return getProject().provider(() -> LoomGradleExtension.get(getProject()).getMinecraftProvider().minecraftVersion());
|
||||
}
|
||||
|
||||
@Override
|
||||
public FileCollection getNamedMinecraftJars() {
|
||||
final ConfigurableFileCollection jars = getProject().getObjects().fileCollection();
|
||||
jars.from(getProject().provider(() -> LoomGradleExtension.get(getProject()).getMinecraftJars(MappingsNamespace.NAMED)));
|
||||
return jars;
|
||||
}
|
||||
|
||||
// This is here to ensure that LoomGradleExtensionApiImpl compiles without any unimplemented methods
|
||||
private final class EnsureCompile extends LoomGradleExtensionApiImpl {
|
||||
private EnsureCompile() {
|
||||
|
||||
Reference in New Issue
Block a user