@@ -4,6 +4,7 @@ import net.fabricmc.loom.task.AbstractRemapJarTask
4
4
import net.fabricmc.loom.task.RemapJarTask
5
5
import net.fabricmc.loom.task.RemapSourcesJarTask
6
6
import org.gradle.api.Action
7
+ import org.gradle.api.NamedDomainObjectProvider
7
8
import org.gradle.api.Project
8
9
import org.gradle.api.file.DuplicatesStrategy
9
10
import org.gradle.api.publish.PublishingExtension
@@ -30,22 +31,23 @@ class JarTaskSet(
30
31
val remapSources : TaskProvider <RemapSourcesJarTask >
31
32
) {
32
33
33
- fun publishWithRawSources (artifactId : String ) {
34
- publish(artifactId, sources )
34
+ fun publishWithRawSources (action : Action < MavenPublication >): NamedDomainObjectProvider < MavenPublication > {
35
+ return publish(sources, action )
35
36
}
36
37
37
- fun publishWithRemappedSources (artifactId : String ) {
38
- publish(artifactId, remapSources )
38
+ fun publishWithRemappedSources (action : Action < MavenPublication >): NamedDomainObjectProvider < MavenPublication > {
39
+ return publish(remapSources, action )
39
40
}
40
41
41
- private fun publish (artifactId : String , sourceJar : TaskProvider <out Jar >) {
42
- project.the<PublishingExtension >().publications {
43
- register<MavenPublication >(" ${name} RemapMaven" ) {
44
- artifact(remapJar)
45
- artifact(sourceJar)
46
- artifact(javadocJar)
47
- this .artifactId = artifactId
48
- }
42
+ private fun publish (
43
+ sourceJar : TaskProvider <out Jar >,
44
+ action : Action <MavenPublication >
45
+ ): NamedDomainObjectProvider <MavenPublication > {
46
+ return project.the<PublishingExtension >().publications.register<MavenPublication >(" ${name} RemapMaven" ) {
47
+ artifact(remapJar)
48
+ artifact(sourceJar)
49
+ artifact(javadocJar)
50
+ action.execute(this )
49
51
}
50
52
}
51
53
0 commit comments