switch to Gradle Kotlin DSL

This commit is contained in:
octarine-noise
2020-01-03 21:36:46 +01:00
parent 2a06c18884
commit b4f18c1e1d
6 changed files with 82 additions and 109 deletions

View File

@@ -1,99 +0,0 @@
buildscript {
repositories {
mavenLocal()
mavenCentral()
jcenter()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
maven {
name = 'sponge'
url = 'https://repo.spongepowered.org/maven'
}
}
dependencies {
classpath(group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true) {
exclude group: 'trove', module: 'trove'
}
classpath 'org.spongepowered:mixingradle:0.7-SNAPSHOT'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
apply plugin: "net.minecraftforge.gradle"
apply plugin: 'org.spongepowered.mixin'
apply plugin: 'kotlin'
sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8'
repositories {
mavenCentral()
jcenter()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
maven {
name = 'Curse'
url = 'https://minecraft.curseforge.com/api/maven/'
}
maven {
name = 'sponge'
url = 'https://repo.spongepowered.org/maven'
}
}
dependencies {
minecraft "net.minecraftforge:forge:$mc_version-$forge_version"
implementation "kottle:Kottle:$kottle_version"
implementation "org.spongepowered:mixin:0.8-SNAPSHOT"
}
mixin {
add sourceSets.main, "betterfoliage.refmap.json"
}
minecraft {
mappings channel: "$mcp_mappings_channel", version: "$mcp_mappings_version"
accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
runs {
client {
workingDirectory project.file('run')
property 'forge.logging.markers', 'CORE'
property 'forge.logging.console.level', 'debug'
mods {
betterfoliage {
source sourceSets.main
}
}
}
server {
workingDirectory project.file('run')
property 'forge.logging.markers', 'CORE'
property 'forge.logging.console.level', 'debug'
mods {
betterfoliage {
source sourceSets.main
}
}
}
}
}
compileKotlin {
kotlinOptions {
freeCompilerArgs += ("-Xno-param-assertions")
freeCompilerArgs += ("-Xno-call-assertions")
}
}
jar {
archiveName = "BetterFoliage-${version}-Forge-${mc_version}.jar"
manifest {
from "src/main/resources/META-INF/MANIFEST.MF"
attributes "Implementation-Version": "${version}"
}
}

63
build.gradle.kts Normal file
View File

@@ -0,0 +1,63 @@
plugins {
kotlin("jvm").version("1.3.61")
id("net.minecraftforge.gradle").version("3.0.157")
id("org.spongepowered.mixin").version("0.7-SNAPSHOT")
}
repositories {
maven("http://files.minecraftforge.net/maven")
maven("https://repo.spongepowered.org/maven")
maven("https://minecraft.curseforge.com/api/maven")
}
dependencies {
"minecraft"("net.minecraftforge:forge:${properties["mcVersion"]}-${properties["forgeVersion"]}")
"implementation"("kottle:Kottle:${properties["kottleVersion"]}")
"implementation"("org.spongepowered:mixin:0.8-SNAPSHOT")
}
sourceSets {
get("main").resources.srcDir("src/forge/resources")
get("main").java.srcDir("src/forge/java")
}
kotlin.sourceSets {
get("main").kotlin.srcDir("src/forge/kotlin")
}
minecraft {
mappings(properties["mappingsChannel"] as String, properties["mappingsVersion"] as String)
accessTransformer(file("src/main/resources/META-INF/accesstransformer.cfg"))
runs.create("client") {
workingDirectory(file("run"))
properties["forge.logging.markers"] = "CORE"
properties["forge.logging.console.level"] = "debug"
mods.create("betterfoliage") {
source(sourceSets["main"])
}
}
}
mixin {
add(sourceSets["main"], "betterfoliage.refmap.json")
}
java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlin {
target.compilations.configureEach {
kotlinOptions.freeCompilerArgs += listOf("-Xno-param-assertions", "-Xno-call-assertions")
}
}
tasks.getByName<Jar>("jar") {
archiveName = "BetterFoliage-${project.version}-Forge-${properties["mcVersion"]}.jar"
manifest {
from(file("src/main/resources/META-INF/MANIFEST.MF"))
attributes["Implementation-Version"] = project.version
}
}

View File

@@ -5,11 +5,9 @@ jarName = BetterFoliage-Forge
version = 2.3.1
mc_version = 1.14.4
forge_version = 28.1.109
mcp_mappings_channel = snapshot
mcp_mappings_version = 20190719-1.14.3
mcVersion = 1.14.4
forgeVersion = 28.1.109
mappingsChannel = snapshot
mappingsVersion = 20190719-1.14.3
kotlin_version = 1.3.61
forgelin_version = 1.8.4
kottle_version = 1.4.0
kottleVersion = 1.4.0

View File

@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.9-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@@ -1,2 +0,0 @@
rootProject.name = 'BetterFoliage'

13
settings.gradle.kts Normal file
View File

@@ -0,0 +1,13 @@
pluginManagement {
repositories {
maven("http://files.minecraftforge.net/maven")
maven("https://repo.spongepowered.org/maven")
gradlePluginPortal()
}
resolutionStrategy {
eachPlugin {
if (requested.id.let { it.namespace == "net.minecraftforge" && it.name == "gradle"} ) useModule("net.minecraftforge.gradle:ForgeGradle:${requested.version}")
if (requested.id.let { it.namespace == "org.spongepowered" && it.name == "mixin"} ) useModule("org.spongepowered:mixingradle:${requested.version}")
}
}
}