plugins { id 'fabric-loom' version '1.2-SNAPSHOT' apply(false) id 'net.minecraftforge.gradle' version '[6.0,6.2)' apply(false) id 'org.spongepowered.gradle.vanilla' version '0.2.1-SNAPSHOT' apply(false) id("org.spongepowered.mixin") version "0.7-SNAPSHOT" apply(false) } subprojects { apply plugin: 'java' java.toolchain.languageVersion = JavaLanguageVersion.of(17) java.withSourcesJar() java.withJavadocJar() jar { from(rootProject.file("LICENSE")) { rename { "${it}_${mod_name}" } } manifest { attributes([ 'Specification-Title' : mod_name, 'Specification-Vendor' : mod_author, 'Specification-Version' : project.jar.archiveVersion, 'Implementation-Title' : project.name, 'Implementation-Version' : project.jar.archiveVersion, 'Implementation-Vendor' : mod_author, 'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"), 'Timestamp' : System.currentTimeMillis(), 'Built-On-Java' : "${System.getProperty('java.vm.version')} (${System.getProperty('java.vm.vendor')})", 'Built-On-Minecraft' : minecraft_version ]) } } sourcesJar { from(rootProject.file("LICENSE")) { rename { "${it}_${mod_name}" } } } repositories { mavenCentral() maven { name = 'Sponge / Mixin' url = 'https://repo.spongepowered.org/repository/maven-public/' } maven { name = 'BlameJared Maven (JEI / CraftTweaker / Bookshelf)' url = 'https://maven.blamejared.com' } // CC: Tweaked maven { url "https://squiddev.cc/maven/" content { includeGroup("cc.tweaked") includeModule("org.squiddev", "Cobalt") } } // Curseforge repositories { maven { url "https://cursemaven.com" } } // Create Fabric 1.20 (Jeez that's a lot of mavens) // maven { // name "devOSSnapshots" // url "https://mvn.devos.one/snapshots" // } // maven { // name "tterrag maven" // url "https://maven.tterrag.com/" // } // maven { // url "https://maven.jamieswhiteshirt.com/libs-release" // content { // includeGroup "com.jamieswhiteshirt" // } // } } tasks.withType(JavaCompile).configureEach { it.options.encoding = 'UTF-8' it.options.getRelease().set(17) } processResources { filesMatching(['pack.mcmeta', 'fabric.mod.json', 'mods.toml', '*.mixins.json']) { expand project.properties } } // Disables Gradle's custom module metadata from being published to maven. The // metadata includes mapped dependencies which are not reasonably consumable by // other mod developers. tasks.withType(GenerateModuleMetadata).configureEach { enabled = false } }