aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoman / Nea <roman.graef@gmail.com>2022-01-16 00:39:26 +0100
committerGitHub <noreply@github.com>2022-01-15 18:39:26 -0500
commit44579fe04c21b8d7dca5d9b267e81ae8e46515f2 (patch)
tree9dd3f5ce4bc7124102938921818e24790943d442
parent1cf4a3bc76fa52cd847b3da8022e9820de5862c2 (diff)
downloadNotEnoughUpdates-44579fe04c21b8d7dca5d9b267e81ae8e46515f2.tar.gz
NotEnoughUpdates-44579fe04c21b8d7dca5d9b267e81ae8e46515f2.tar.bz2
NotEnoughUpdates-44579fe04c21b8d7dca5d9b267e81ae8e46515f2.zip
New buildscript (#59)
* Rewrite build.gradle * Fix mixins * Finishing touches on the buildscript * maybe potentially fix a dependency issue that i cant reproduce on my end
-rw-r--r--build.gradle128
-rw-r--r--build.gradle.kts134
-rw-r--r--settings.gradle.kts17
3 files changed, 151 insertions, 128 deletions
diff --git a/build.gradle b/build.gradle
deleted file mode 100644
index 3258358f..00000000
--- a/build.gradle
+++ /dev/null
@@ -1,128 +0,0 @@
-buildscript {
- repositories {
- jcenter()
- maven {
- name 'JitPack'
- url 'https://jitpack.io'
- }
- maven { url = "https://maven.minecraftforge.net/" }
- maven { url = "https://repo.spongepowered.org/maven" }
- }
- dependencies {
- classpath "com.github.asbyth:ForgeGradle:6f53277"
- classpath 'com.github.LxGaming:MixinGradle:d75e32e'//0.6-SNAPSHOT'
- classpath 'com.github.jengelman.gradle.plugins:shadow:6.1.0'
- }
-}
-
-apply plugin: 'java'
-apply plugin: "net.minecraftforge.gradle.forge"
-apply plugin: 'org.spongepowered.mixin'
-apply plugin: 'com.github.johnrengelman.shadow'
-
-sourceCompatibility = 1.8
-targetCompatibility = 1.8
-
-version = "2.1-REL"
-group= "io.github.moulberry"
-archivesBaseName = "NotEnoughUpdates"
-String modid = "notenoughupdates"
-String mixinClassifier = "dep"
-compileJava.options.encoding = 'UTF-8'
-
-minecraft {
- version = "1.8.9-11.15.1.2318-1.8.9"
- runDir = "run"
- mappings = "stable_22"
-}
-
-repositories {
- jcenter()
- maven { url 'https://repo.spongepowered.org/maven/' }
- flatDir {
- dirs 'deps'
- }
-}
-
-dependencies {
- compile('org.spongepowered:mixin:0.7.11-SNAPSHOT')
- annotationProcessor('org.spongepowered:mixin:0.7.11-SNAPSHOT')
- compile('com.fasterxml.jackson.core:jackson-core:2.10.2')
- compile('info.bliki.wiki:bliki-core:3.1.0')
-}
-
-mixin {
- add sourceSets.main, "mixins.${modid}.refmap.json"
-}
-
-jar {
- manifest.attributes(
- 'Main-Class': 'NotSkyblockAddonsInstallerFrame',
- 'TweakClass': 'org.spongepowered.asm.launch.MixinTweaker',
- 'MixinConfigs': "mixins.${modid}.json",
- 'FMLCorePluginContainsFMLMod': true,
- "ForceLoadAsMod": true,
- "FMLAT": 'notenoughupdates_at.cfg'
- )
-}
-
-shadowJar {
- dependencies {
- include(dependency('org.spongepowered:mixin:0.7.11-SNAPSHOT'))
-
- include(dependency('commons-io:commons-io'))
- include(dependency('org.apache.commons:commons-lang3'))
- include(dependency('com.fasterxml.jackson.core:jackson-databind:2.10.2'))
- include(dependency('com.fasterxml.jackson.core:jackson-annotations:2.10.2'))
- include(dependency('com.fasterxml.jackson.core:jackson-core:2.10.2'))
-
- include(dependency('info.bliki.wiki:bliki-core:3.1.0'))
- include(dependency('org.slf4j:slf4j-api:1.7.18'))
- include(dependency('org.luaj:luaj-jse:3.0.1'))
- }
-
- relocate 'com.fasterxml.jackson', 'neu.com.fasterxml.jackson'
- relocate 'org.eclipse', 'neu.org.eclipse'
- relocate 'org.slf4j', 'neu.org.slf4j'
-
- exclude 'module-info.class'
- exclude 'dummyThing'
- exclude 'LICENSE.txt'
-
- classifier = mixinClassifier
-}
-
-reobf {
- shadowJar {
- mappingType = 'SEARGE'
- }
-}
-
-build.dependsOn(shadowJar)
-runClient.dependsOn(build)
-
-processResources
-{
- inputs.property "version", project.version
- inputs.property "mcversion", project.minecraft.version
-
- from(sourceSets.main.resources.srcDirs) {
- include 'mcmod.info'
- expand 'version':project.version, 'mcversion':project.minecraft.version
- }
-
- from(sourceSets.main.resources.srcDirs) {
- exclude 'mcmod.info'
- }
-
- rename '(.+_at.cfg)', 'META-INF/$1'
-}
-
-task moveResources {
- doLast {
- ant.move file: "${buildDir}/resources/main",
- todir: "${buildDir}/classes/java"
- }
-}
-moveResources.dependsOn processResources
-classes.dependsOn moveResources
diff --git a/build.gradle.kts b/build.gradle.kts
new file mode 100644
index 00000000..26a89ab5
--- /dev/null
+++ b/build.gradle.kts
@@ -0,0 +1,134 @@
+import net.minecraftforge.gradle.user.ReobfMappingType
+
+plugins {
+ java
+ id("net.minecraftforge.gradle.forge") version "6f5327738df"
+ id("com.github.johnrengelman.shadow") version "6.1.0"
+ id("org.spongepowered.mixin") version "d75e32e"
+}
+
+group = "io.github.moulberry"
+version = "2.1"
+
+// Toolchains:
+
+java {
+ // Forge Gradle currently prevents using the toolchain: toolchain.languageVersion.set(JavaLanguageVersion.of(8))
+ sourceCompatibility = JavaVersion.VERSION_1_8
+ targetCompatibility = JavaVersion.VERSION_1_8
+}
+
+minecraft {
+ version = "1.8.9-11.15.1.2318-1.8.9"
+ runDir = "run"
+ mappings = "stable_22"
+ clientJvmArgs.addAll(
+ listOf(
+ "-Dmixin.debug=true",
+ "-Dasmhelper.verbose=true"
+ )
+ )
+ clientRunArgs.addAll(
+ listOf(
+ "--tweakClass org.spongepowered.asm.launch.MixinTweaker",
+ "--mixin mixins.notenoughupdates.json"
+ )
+ )
+}
+
+mixin {
+ add(sourceSets.main.get(), "mixins.notenoughupdates.refmap.json")
+}
+
+// Dependencies:
+
+repositories {
+ mavenCentral()
+ flatDir { dirs("deps/") }
+ maven("https://repo.spongepowered.org/maven/")
+}
+
+dependencies {
+ implementation("org.spongepowered:mixin:0.7.11-SNAPSHOT")
+ annotationProcessor("org.spongepowered:mixin:0.7.11-SNAPSHOT")
+ implementation("com.fasterxml.jackson.core:jackson-core:2.13.1")
+ implementation("info.bliki.wiki:bliki-core:3.1.0")
+}
+
+
+// Tasks:
+
+tasks.withType(JavaCompile::class) {
+ options.encoding = "UTF-8"
+}
+
+tasks.withType(Jar::class) {
+ archiveBaseName.set("NotEnoughUpdates")
+ manifest.attributes.run {
+ this["Main-Class"] = "NotSkyblockAddonsInstallerFrame"
+ this["TweakClass"] = "org.spongepowered.asm.launch.MixinTweaker"
+ this["MixinConfigs"] = "mixins.notenoughupdates.json"
+ this["FMLCorePluginContainsFMLMod"] = "true"
+ this["ForceLoadAsMod"] = "true"
+ this["FMLAT"] = "notenoughupdates_at.cfg"
+ }
+}
+
+tasks.shadowJar {
+ archiveClassifier.set("dep")
+ exclude(
+ "module-info.class",
+ "LICENSE.txt"
+ )
+ dependencies {
+ include(dependency("org.spongepowered:mixin:0.7.11-SNAPSHOT"))
+
+ include(dependency("commons-io:commons-io"))
+ include(dependency("org.apache.commons:commons-lang3"))
+ include(dependency("com.fasterxml.jackson.core:jackson-databind:2.10.2"))
+ include(dependency("com.fasterxml.jackson.core:jackson-annotations:2.10.2"))
+ include(dependency("com.fasterxml.jackson.core:jackson-core:2.10.2"))
+
+ include(dependency("info.bliki.wiki:bliki-core:3.1.0"))
+ include(dependency("org.slf4j:slf4j-api:1.7.18"))
+ include(dependency("org.luaj:luaj-jse:3.0.1"))
+ }
+ fun relocate(name: String) = relocate(name, "io.github.moulberry.notenoughupdates.deps.$name")
+ relocate("com.fasterxml.jackson")
+ relocate("org.eclipse")
+ relocate("org.slf4j")
+}
+
+tasks.build.get().dependsOn(tasks.shadowJar)
+
+reobf {
+ create("shadowJar") {
+ mappingType = ReobfMappingType.SEARGE
+ }
+}
+
+tasks.processResources {
+ from(sourceSets.main.get().resources.srcDirs)
+ filesMatching("mcmod.info") {
+ expand(
+ "version" to project.version,
+ "mcversion" to minecraft.version
+ )
+ }
+ rename("(.+_at.cfg)".toPattern(), "META-INF/$1")
+}
+
+val moveResources by tasks.creating {
+ doLast {
+ ant.withGroovyBuilder {
+ "move"(
+ "file" to "$buildDir/resources/main",
+ "todir" to "$buildDir/classes/java"
+ )
+ }
+ }
+ dependsOn(tasks.processResources)
+}
+
+tasks.classes { dependsOn(moveResources) }
+
diff --git a/settings.gradle.kts b/settings.gradle.kts
new file mode 100644
index 00000000..44138312
--- /dev/null
+++ b/settings.gradle.kts
@@ -0,0 +1,17 @@
+pluginManagement {
+ repositories {
+ mavenCentral()
+ gradlePluginPortal()
+ maven(url = "https://jitpack.io/")
+ maven(url = "https://maven.minecraftforge.net/")
+ maven(url = "https://repo.spongepowered.org/maven/")
+ }
+ resolutionStrategy {
+ eachPlugin {
+ when (requested.id.id) {
+ "net.minecraftforge.gradle.forge" -> useModule("com.github.asbyth:ForgeGradle:${requested.version}")
+ "org.spongepowered.mixin" -> useModule("com.github.LxGaming:MixinGradle:${requested.version}")
+ }
+ }
+ }
+}