44 */
55package net .minecraftforge .forgedev .tasks .launcher ;
66
7- import com .google .gson .JsonIOException ;
8- import com .google .gson .reflect .TypeToken ;
97import net .minecraftforge .forgedev .ForgeDevProblems ;
108import net .minecraftforge .forgedev .ForgeDevTask ;
119import net .minecraftforge .forgedev .Tools ;
1210import net .minecraftforge .forgedev .Util ;
13- import net .minecraftforge .util .data .json .JsonData ;
14- import net .minecraftforge .util .data .json .RunConfig ;
1511import org .gradle .api .Project ;
16- import org .gradle .api .UnknownDomainObjectException ;
1712import org .gradle .api .artifacts .ModuleIdentifier ;
1813import org .gradle .api .attributes .Usage ;
14+ import org .gradle .api .file .ConfigurableFileCollection ;
1915import org .gradle .api .file .DirectoryProperty ;
20- import org .gradle .api .file .RegularFileProperty ;
21- import org .gradle .api .provider .ListProperty ;
2216import org .gradle .api .provider .Property ;
2317import org .gradle .api .provider .Provider ;
2418import org .gradle .api .reflect .HasPublicType ;
2519import org .gradle .api .reflect .TypeOf ;
2620import org .gradle .api .tasks .Input ;
27- import org .gradle .api .tasks .InputFile ;
21+ import org .gradle .api .tasks .InputFiles ;
2822import org .gradle .api .tasks .Internal ;
2923import org .gradle .api .tasks .JavaExec ;
3024import org .gradle .api .tasks .Nested ;
@@ -44,14 +38,11 @@ public abstract class SlimeLauncherExec extends JavaExec implements ForgeDevTask
4438 public static TaskProvider <SlimeLauncherExec > register (Project project , SourceSet sourceSet , SlimeLauncherOptionsImpl options , ModuleIdentifier module , String version , File eclipseOutputDir ) {
4539 var metadataDep = project .getDependencyFactory ().create (module .getGroup (), module .getName (), version , "metadata" , "zip" );
4640 var metadataAttr = project .getObjects ().named (Usage .class , "metadata" );
47- var metadataZip = project .getObjects ().fileProperty ().fileProvider (project .getProviders ().provider (() -> {
48- var configuration = project .getConfigurations ().detachedConfiguration (
49- metadataDep
50- );
51- configuration .setTransitive (false );
52- configuration .attributes (a -> a .attribute (Usage .USAGE_ATTRIBUTE , metadataAttr ));
53- return configuration .getSingleFile ();
54- }));
41+ var metadataConfiguration = project .getConfigurations ().detachedConfiguration (
42+ metadataDep
43+ );
44+ metadataConfiguration .setTransitive (false );
45+ metadataConfiguration .attributes (a -> a .attribute (Usage .USAGE_ATTRIBUTE , metadataAttr ));
5546
5647 var runTaskName = sourceSet .getTaskName ("run" , options .getName ());
5748 var generateEclipseRunTaskName = sourceSet .getTaskName ("genEclipseRun" , options .getName ());
@@ -72,7 +63,7 @@ public static TaskProvider<SlimeLauncherExec> register(Project project, SourceSe
7263
7364 var caches = task .getObjects ().directoryProperty ().value (task .globalCaches ().dir ("slime-launcher/cache/%s" .formatted (version )));
7465 task .getCacheDir ().set (caches .map (task .problems .ensureFileLocation ()));
75- task .getMetadataZip ().set ( metadataZip );
66+ task .getMetadata ().setFrom ( metadataConfiguration );
7667
7768 task .getOptions ().set (options );
7869 });
@@ -88,7 +79,7 @@ public static TaskProvider<SlimeLauncherExec> register(Project project, SourceSe
8879
8980 var caches = task .getObjectFactory ().directoryProperty ().value (task .globalCaches ().dir ("slime-launcher/cache/%s" .formatted (version )));
9081 task .getCacheDir ().set (caches .map (task .problems .ensureFileLocation ()));
91- task .getMetadataZip ().set ( metadataZip );
82+ task .getMetadata ().setFrom ( metadataConfiguration );
9283
9384 task .getOptions ().set (options );
9485 });
@@ -102,7 +93,7 @@ public static TaskProvider<SlimeLauncherExec> register(Project project, SourceSe
10293
10394 protected abstract @ Internal DirectoryProperty getCacheDir ();
10495
105- protected abstract @ InputFile RegularFileProperty getMetadataZip ();
96+ protected abstract @ InputFiles ConfigurableFileCollection getMetadata ();
10697
10798 protected abstract @ Input @ Optional Property <Boolean > getClient ();
10899
@@ -152,7 +143,7 @@ public void exec() {
152143 } else {
153144 this .args ("--main" , mainClass .get (),
154145 "--cache" , this .getCacheDir ().get ().getAsFile ().getAbsolutePath (),
155- "--metadata" , this .getMetadataZip ().get (). getAsFile ().getAbsolutePath (),
146+ "--metadata" , this .getMetadata ().getSingleFile ().getAbsolutePath (),
156147 "--" );
157148 }
158149
0 commit comments