// @file build.gradle // Engineer's decor mod gradle build. buildscript { repositories { maven { url = 'https://maven.minecraftforge.net' } mavenCentral() } dependencies { classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '5.1.+', changing: true } } apply plugin: 'net.minecraftforge.gradle' apply plugin: 'eclipse' apply plugin: 'maven-publish' java.toolchain.languageVersion = JavaLanguageVersion.of(17) println('Java: ' + System.getProperty('java.version') + ' JVM: ' + System.getProperty('java.vm.version') + '(' + System.getProperty('java.vendor') + ') Arch: ' + System.getProperty('os.arch')) //----------------------------------------------------------------------------- version = "${version_engineersdecor}" group = "wile.engineersdecor" archivesBaseName = "engineersdecor-${version_minecraft}" repositories { maven { name = "Progwml6 maven"; url = "https://dvs1.progwml6.com/files/maven/" } // JEI files maven { name = "ModMaven"; url = "https://modmaven.k-4u.nl" } // JEI files, fallback flatDir { dir 'libs' } // Mod jar dependencies in ./libs } minecraft { mappings channel: "official", version: "1.18.1" runs { client { workingDirectory project.file('run') property 'forge.logging.markers', '' // SCAN,REGISTRIES,REGISTRYDUMP property 'forge.logging.console.level', 'info' mods { engineersdecor { source sourceSets.main } } } server { workingDirectory project.file('run') property 'forge.logging.markers', '' // SCAN,REGISTRIES,REGISTRYDUMP property 'forge.logging.console.level', 'info' mods { engineersdecor { source sourceSets.main } } } } } dependencies { minecraft "net.minecraftforge:forge:${version_forge_minecraft}" compileOnly fg.deobf("mezz.jei:jei-${version_jei}:api") runtimeOnly fg.deobf("mezz.jei:jei-${version_jei}") } processResources { outputs.upToDateWhen { false } doLast { file("${sourceSets.main.output.resourcesDir}/.gitversion-engineersdecor").text = 'git log "-1" "--format=%h"'.execute().in.text.trim() } } jar { manifest { attributes([ "Specification-Title": "engineersdecor", "Specification-Vendor": "wilechaote", "Specification-Version": "1", // We are version 1 of ourselves "Implementation-Title": project.name, "Implementation-Version": "${version_engineersdecor}", "Implementation-Vendor" :"wilechaote", "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ") ]) } } jar.finalizedBy('reobfJar') // def reobfFile = file("$buildDir/reobfJar/output.jar") // def reobfArtifact = artifacts.add('default', reobfFile) { type 'jar'; builtBy 'reobfJar' } //import net.minecraftforge.gradle.common.task.SignJar // task signJar(type: SignJar, dependsOn: jar) { // onlyIf { project.hasProperty("keystore_file") } // if(project.hasProperty("keystore_file")) { // keyStore = project.getProperty("keystore_file") // alias = project.getProperty("keystore_alias") // storePass = project.getProperty("keystore_pass") // keyPass = project.getProperty("keystore_keypass") // inputFile = jar.archivePath // outputFile = jar.archivePath // } else { // logger.warn("[WARNING] Signing skipped.") // } // } // build.dependsOn signJar publishing { publications { mavenJava(MavenPublication) { artifact jar } } repositories { maven { url "file:///${project.projectDir}/mcmodsrepo" } } }