Clean up leftovers
This commit is contained in:
parent
fbfbe4261b
commit
1725b91c94
|
@ -27,7 +27,7 @@ curseforge {
|
|||
.forEach { optionalDependency(it) }
|
||||
}
|
||||
afterEvaluate {
|
||||
uploadTask.dependsOn(tasks.build)
|
||||
uploadTask.dependsOn(tasks.build.get())
|
||||
}
|
||||
}
|
||||
options {
|
||||
|
|
|
@ -58,12 +58,12 @@ allprojects {
|
|||
loom {
|
||||
mods {
|
||||
register(sub.name) {
|
||||
sourceSet(sub.sourceSets.main)
|
||||
sourceSet(sub.sourceSets.client)
|
||||
sourceSet(sub.sourceSets.main.get())
|
||||
sourceSet(sub.sourceSets.client.get())
|
||||
}
|
||||
if (!sourceSets.testmod.resources.isEmpty) {
|
||||
if (!sourceSets.testmod.get().resources.isEmpty) {
|
||||
register("${sub.name}-testmod") {
|
||||
sourceSet(sub.sourceSets.testmod)
|
||||
sourceSet(sub.sourceSets.testmod.get())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -81,7 +81,7 @@ subprojects {
|
|||
|
||||
tasks.named("javadoc").get().enabled = false
|
||||
|
||||
if (name !in devOnlyModules && !sourceSets.testmod.resources.isEmpty) {
|
||||
if (name !in devOnlyModules && !sourceSets.testmod.get().resources.isEmpty) {
|
||||
//TODO register testmods of subprojects as testmodInclude automatically
|
||||
// val configuration = configurations.create("testmodJar").name
|
||||
// val testmodJarTask = tasks.named<Jar>("testmodJar").get()
|
||||
|
@ -97,17 +97,17 @@ subprojects {
|
|||
|
||||
self.dependencies {
|
||||
api(project(mapOf("path" to project.path, "configuration" to "shadow")))
|
||||
clientImplementation(sourceSets.client.output)
|
||||
testmodImplementation(sourceSets.testmod.output)
|
||||
clientImplementation(sourceSets.client.get().output)
|
||||
testmodImplementation(sourceSets.testmod.get().output)
|
||||
|
||||
if (name !in devOnlyModules) include(project)
|
||||
}
|
||||
|
||||
afterEvaluate {
|
||||
tasks.genClientOnlySources.enabled = false
|
||||
tasks.genCommonSources.enabled = false
|
||||
tasks.unpickClientOnlyJar.enabled = false
|
||||
tasks.unpickCommonJar.enabled = false
|
||||
tasks.genClientOnlySources.get().enabled = false
|
||||
tasks.genCommonSources.get().enabled = false
|
||||
tasks.unpickClientOnlyJar.get().enabled = false
|
||||
tasks.unpickCommonJar.get().enabled = false
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,36 +1,16 @@
|
|||
package io.gitlab.jfronny.scripts
|
||||
|
||||
import org.gradle.api.Action
|
||||
import org.gradle.api.DefaultTask
|
||||
import org.gradle.api.PolymorphicDomainObjectContainer
|
||||
import org.gradle.api.Project
|
||||
import org.gradle.api.Task
|
||||
import org.gradle.api.artifacts.Dependency
|
||||
import org.gradle.api.artifacts.dsl.DependencyHandler
|
||||
import org.gradle.api.plugins.JavaPluginExtension
|
||||
import org.gradle.api.publish.PublishingExtension
|
||||
import org.gradle.api.tasks.SourceSetContainer
|
||||
import org.gradle.api.tasks.TaskContainer
|
||||
import org.gradle.api.tasks.bundling.Jar
|
||||
import org.gradle.kotlin.dsl.named
|
||||
import org.gradle.language.jvm.tasks.ProcessResources
|
||||
import kotlin.reflect.KClass
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
val Project.java: JavaPluginExtension get() = extensions.getByName("java") as JavaPluginExtension
|
||||
fun Project.java(configure: Action<JavaPluginExtension>) = extensions.configure("java", configure)
|
||||
val Project.publishing: PublishingExtension get() = extensions.getByName("publishing") as PublishingExtension
|
||||
fun Project.publishing(configure: Action<PublishingExtension>) = extensions.configure("publishing", configure)
|
||||
|
||||
val Project.sourceSets: SourceSetContainer get() = extensions.getByName("sourceSets") as SourceSetContainer
|
||||
fun Project.sourceSets(configure: Action<SourceSetContainer>) = extensions.configure("sourceSets", configure)
|
||||
|
||||
val TaskContainer.assemble: DefaultTask get() = named<DefaultTask>("assemble").get()
|
||||
val TaskContainer.build: DefaultTask get() = named<DefaultTask>("build").get()
|
||||
val TaskContainer.jar: Jar get() = named<Jar>("jar").get()
|
||||
val TaskContainer.sourcesJar: Jar get() = named<Jar>("sourcesJar").get()
|
||||
val TaskContainer.publish: Task get() = named("publish").get()
|
||||
fun TaskContainer.processResources(configure: ProcessResources.() -> Unit) = named<ProcessResources>("processResources").configure(configure)
|
||||
val TaskContainer.sourcesJar get() = named<Jar>("sourcesJar")
|
||||
|
||||
fun <T : Any, C : PolymorphicDomainObjectContainer<T>, U : T> C.registering(type: KClass<U>, action: U.() -> Unit): PDelegate<T, C, U> = PDelegate(this, type.java, action)
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
package io.gitlab.jfronny.scripts
|
||||
|
||||
import net.fabricmc.loom.LoomGradleExtension
|
||||
import net.fabricmc.loom.api.LoomGradleExtensionAPI
|
||||
import net.fabricmc.loom.task.RemapJarTask
|
||||
import net.fabricmc.loom.task.RemapSourcesJarTask
|
||||
import net.fabricmc.loom.task.UnpickJarTask
|
||||
import org.gradle.api.Action
|
||||
import org.gradle.api.DefaultTask
|
||||
|
@ -13,7 +13,7 @@ import org.gradle.api.tasks.SourceSetContainer
|
|||
import org.gradle.api.tasks.TaskContainer
|
||||
import org.gradle.kotlin.dsl.named
|
||||
|
||||
val Project.loom: LoomGradleExtensionAPI get() = extensions.getByName("loom") as LoomGradleExtensionAPI
|
||||
val Project.loom: LoomGradleExtensionAPI get() = LoomGradleExtension.get(this)
|
||||
fun Project.loom(configure: Action<LoomGradleExtensionAPI>) = extensions.configure("loom", configure)
|
||||
|
||||
fun DependencyHandler.minecraft(dependencyNotation: Any) = add("minecraft", dependencyNotation)
|
||||
|
@ -22,16 +22,12 @@ fun DependencyHandler.modImplementation(dependencyNotation: Any) = add("modImple
|
|||
fun DependencyHandler.testmodImplementation(dependencyNotation: Any) = add("testmodImplementation", dependencyNotation)
|
||||
fun DependencyHandler.clientImplementation(dependencyNotation: Any) = add("clientImplementation", dependencyNotation)
|
||||
|
||||
val SourceSetContainer.main: SourceSet get() = named("main").get()
|
||||
fun SourceSetContainer.main(configure: Action<SourceSet>) = configure.execute(this.main)
|
||||
val SourceSetContainer.client: SourceSet get() = named("client").get()
|
||||
fun SourceSetContainer.client(configure: Action<SourceSet>) = configure.execute(this.client)
|
||||
val SourceSetContainer.testmod: SourceSet get() = named("testmod").get()
|
||||
fun SourceSetContainer.testmod(configure: Action<SourceSet>) = configure.execute(this.testmod)
|
||||
val SourceSetContainer.main get() = named<SourceSet>("main")
|
||||
val SourceSetContainer.client get() = named<SourceSet>("client")
|
||||
val SourceSetContainer.testmod get() = named<SourceSet>("testmod")
|
||||
|
||||
fun TaskContainer.remapJar(configure: RemapJarTask.() -> Unit) = named<RemapJarTask>("remapJar").configure(configure)
|
||||
val TaskContainer.remapSourcesJar: RemapSourcesJarTask get() = named<RemapSourcesJarTask>("remapSourcesJar").get()
|
||||
val TaskContainer.genClientOnlySources: DefaultTask get() = named<DefaultTask>("genClientOnlySources").get()
|
||||
val TaskContainer.genCommonSources: DefaultTask get() = named<DefaultTask>("genCommonSources").get()
|
||||
val TaskContainer.unpickClientOnlyJar: UnpickJarTask get() = named<UnpickJarTask>("unpickClientOnlyJar").get()
|
||||
val TaskContainer.unpickCommonJar: UnpickJarTask get() = named<UnpickJarTask>("unpickCommonJar").get()
|
||||
val TaskContainer.genClientOnlySources get() = named<DefaultTask>("genClientOnlySources")
|
||||
val TaskContainer.genCommonSources get() = named<DefaultTask>("genCommonSources")
|
||||
val TaskContainer.unpickClientOnlyJar get() = named<UnpickJarTask>("unpickClientOnlyJar")
|
||||
val TaskContainer.unpickCommonJar get() = named<UnpickJarTask>("unpickCommonJar")
|
|
@ -1,11 +0,0 @@
|
|||
package io.gitlab.jfronny.scripts
|
||||
|
||||
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
|
||||
import org.gradle.api.artifacts.Configuration
|
||||
import org.gradle.api.artifacts.ConfigurationContainer
|
||||
import org.gradle.api.tasks.TaskContainer
|
||||
import org.gradle.kotlin.dsl.named
|
||||
|
||||
val ConfigurationContainer.shadow: Configuration get() = named("shadow").get()
|
||||
|
||||
val TaskContainer.shadowJar get() = named<ShadowJar>("shadowJar")
|
|
@ -10,6 +10,13 @@ import org.gradle.api.tasks.compile.JavaCompile
|
|||
import org.gradle.kotlin.dsl.*
|
||||
import java.io.File
|
||||
|
||||
plugins {
|
||||
idea
|
||||
`java-library`
|
||||
`maven-publish`
|
||||
id("com.github.johnrengelman.shadow")
|
||||
}
|
||||
|
||||
val devlibs = File(project.buildDir, "devlibs")
|
||||
val args = extensions.create<LomExtension>("lom")
|
||||
|
||||
|
@ -21,17 +28,13 @@ afterEvaluate {
|
|||
else loom.officialMojangMappings()
|
||||
modImplementation("net.fabricmc:fabric-loader:${args.loaderVersion.get()}")
|
||||
|
||||
testmodImplementation(sourceSets.main.output)
|
||||
testmodImplementation(sourceSets.client.output)
|
||||
testmodImplementation(sourceSets.main.get().output)
|
||||
testmodImplementation(sourceSets.client.get().output)
|
||||
}
|
||||
}
|
||||
|
||||
// Apply necessary plugins
|
||||
apply(plugin = "idea")
|
||||
apply(plugin = "java-library")
|
||||
// Apply loom manually to ensure the afterEvaluate block above is done before looms are called
|
||||
apply(plugin = "fabric-loom")
|
||||
apply(plugin = "maven-publish")
|
||||
apply(plugin = "com.github.johnrengelman.shadow")
|
||||
|
||||
// Configure loom for stricter dev env
|
||||
loom {
|
||||
|
@ -42,26 +45,26 @@ loom {
|
|||
// Create testmod source set with access to main and client classpaths
|
||||
sourceSets {
|
||||
create("testmod") {
|
||||
compileClasspath += sourceSets.main.compileClasspath
|
||||
runtimeClasspath += sourceSets.main.runtimeClasspath
|
||||
compileClasspath += sourceSets.main.get().compileClasspath
|
||||
runtimeClasspath += sourceSets.main.get().runtimeClasspath
|
||||
|
||||
compileClasspath += sourceSets.client.compileClasspath
|
||||
runtimeClasspath += sourceSets.client.runtimeClasspath
|
||||
compileClasspath += sourceSets.client.get().compileClasspath
|
||||
runtimeClasspath += sourceSets.client.get().runtimeClasspath
|
||||
}
|
||||
}
|
||||
|
||||
val hasTestmod = !sourceSets.testmod.resources.isEmpty
|
||||
val hasTestmod = !sourceSets.testmod.get().resources.isEmpty
|
||||
|
||||
// Class path groups (required to allow ultra early init)
|
||||
loom {
|
||||
mods {
|
||||
register(name) {
|
||||
sourceSet(sourceSets.main)
|
||||
sourceSet(sourceSets.client)
|
||||
sourceSet(sourceSets.main.get())
|
||||
sourceSet(sourceSets.client.get())
|
||||
}
|
||||
if (hasTestmod) {
|
||||
register("$name-testmod") {
|
||||
sourceSet(sourceSets.testmod)
|
||||
sourceSet(sourceSets.testmod.get())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -72,13 +75,13 @@ loom {
|
|||
client()
|
||||
ideConfigGenerated(rootProject == project)
|
||||
name("Testmod Client")
|
||||
source(sourceSets.testmod)
|
||||
source(sourceSets.testmod.get())
|
||||
}
|
||||
create("testmodServer") {
|
||||
server()
|
||||
ideConfigGenerated(rootProject == project)
|
||||
name("Testmod Server")
|
||||
source(sourceSets.testmod)
|
||||
source(sourceSets.testmod.get())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -111,20 +114,20 @@ repositories {
|
|||
}
|
||||
|
||||
// Mark normal jars as -dev
|
||||
tasks.jar.archiveClassifier.set("dev")
|
||||
tasks.jar.get().archiveClassifier.set("dev")
|
||||
|
||||
// Used for referencing the unremapped jars of other projects
|
||||
artifacts.add(configurations.create("dev").name, tasks.jar.archiveFile.get().asFile) {
|
||||
artifacts.add(configurations.create("dev").name, tasks.jar.get().archiveFile.get().asFile) {
|
||||
type = "jar"
|
||||
builtBy(tasks.jar)
|
||||
builtBy(tasks.jar.get())
|
||||
}
|
||||
|
||||
// configure the shadow task to not shadow by default and output to builds/devlibs
|
||||
tasks.shadowJar {
|
||||
val inputTask: Jar = tasks.findByName("injectCompiledConfig") as Jar? ?: tasks.jar // get injectCompiledConfig task if present (-> LibJF) or use normal jar task
|
||||
val inputTask: Jar = tasks.findByName("injectCompiledConfig") as Jar? ?: tasks.jar.get() // get injectCompiledConfig task if present (-> LibJF) or use normal jar task
|
||||
dependsOn(inputTask)
|
||||
configurations.clear()
|
||||
from(project.configurations.shadow, inputTask.archiveFile.get())
|
||||
from(project.configurations.shadow.get(), inputTask.archiveFile.get())
|
||||
archiveClassifier.set("shadow")
|
||||
destinationDirectory.set(devlibs)
|
||||
}
|
||||
|
@ -147,7 +150,7 @@ val remapMavenJar by tasks.registering(RemapJarTask::class) {
|
|||
archiveFileName.set("${archiveBaseName.get()}-${project.versionS}-maven.jar")
|
||||
addNestedDependencies.set(false)
|
||||
}
|
||||
tasks.assemble.dependsOn(remapMavenJar)
|
||||
tasks.assemble.get().dependsOn(remapMavenJar)
|
||||
|
||||
// configure remapJar to use the output of shadow
|
||||
tasks.remapJar {
|
||||
|
@ -168,12 +171,12 @@ publishing {
|
|||
publications {
|
||||
create<MavenPublication>("lom") {
|
||||
from(components["java"])
|
||||
setArtifacts(listOf(remapMavenJar, tasks.sourcesJar))
|
||||
setArtifacts(listOf(remapMavenJar, tasks.sourcesJar.get()))
|
||||
}
|
||||
}
|
||||
}
|
||||
tasks.publish.dependsOn(tasks.build)
|
||||
tasks.deployDebug.dependsOn(tasks.publish)
|
||||
tasks.publish.get().dependsOn(tasks.build.get())
|
||||
tasks.deployDebug.dependsOn(tasks.publish.get())
|
||||
|
||||
// create testmodInclude configuration
|
||||
val testmodIncludeConfiguration = configurations.create("testmodInclude")
|
||||
|
@ -181,7 +184,7 @@ val testmodIncludeConfiguration = configurations.create("testmodInclude")
|
|||
if (hasTestmod) {
|
||||
// generate jar from testmod source set
|
||||
val testmodJar by tasks.registering(Jar::class) {
|
||||
from(sourceSets.testmod.output)
|
||||
from(sourceSets.testmod.get().output)
|
||||
destinationDirectory.set(devlibs)
|
||||
archiveClassifier.set("testmod")
|
||||
}
|
||||
|
@ -196,7 +199,7 @@ if (hasTestmod) {
|
|||
addNestedDependencies.set(true)
|
||||
nestedJars.setFrom(*testmodIncludeConfiguration.files.toTypedArray())
|
||||
}
|
||||
tasks.assemble.dependsOn(remapTestmodJar)
|
||||
tasks.assemble.get().dependsOn(remapTestmodJar)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue