plugins { id 'fabric-loom' version '0.8-SNAPSHOT' id 'maven-publish' id 'checkstyle' } sourceCompatibility = JavaVersion.VERSION_16 targetCompatibility = JavaVersion.VERSION_16 if(rootProject.file('private.gradle').exists()) { //Publishing details apply from: 'private.gradle' } archivesBaseName = project.archives_base_name version = "$project.mod_version+$project.minecraft_version" group = project.maven_group repositories { maven { url "https://server.bbkr.space/artifactory/libs-release" } maven { url = "https://maven.terraformersmc.com/releases" content { includeGroup "com.terraformersmc" } } } dependencies { minecraft "com.mojang:minecraft:${project.minecraft_version}" mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2" modImplementation "net.fabricmc:fabric-loader:${project.loader_version}" modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}" modImplementation "io.github.cottonmc:Jankson-Fabric:${project.jankson_version}" include "io.github.cottonmc:Jankson-Fabric:${project.jankson_version}" // Using modApi instead of api because of https://github.com/FabricMC/fabric-loom/issues/200 include modApi("io.github.juuxel:libninepatch:${project.libninepatch_version}") // TODO: Add runtime when ModMenu updates to 1.17 modCompileOnly("com.terraformersmc:modmenu:$project.modmenu_version") { exclude group: 'net.fabricmc.fabric-api' } } processResources { inputs.property "version", project.version filesMatching("fabric.mod.json") { expand "version": project.version } } java { withSourcesJar() withJavadocJar() } tasks.withType(JavaCompile) { // ensure that the encoding is set to UTF-8, no matter what the system default is // this fixes some edge cases with special characters not displaying correctly // see http://yodaconditions.net/blog/fix-for-java-file-encoding-problems-with-gradle.html options.encoding = "UTF-8" options.release.set 16 } jar { from "CREDITS.txt", "LICENSE" } checkstyle { configFile = file('checkstyle.xml') toolVersion = '8.36.2' } javadoc { exclude("**/impl/**") } // configure the maven publication publishing { publications { maven(MavenPublication) { artifact(remapJar) { builtBy remapJar } artifact(sourcesJar) { builtBy remapSourcesJar } artifact(javadocJar) } } // select the repositories you want to publish to repositories { if (project.hasProperty("artifactoryUsername")) { maven { url = "https://server.bbkr.space/artifactory/libs-release/" credentials { username = artifactoryUsername password = artifactoryPassword } } } else { println "Cannot configure artifactory; please define ext.artifactoryUsername and ext.artifactoryPassword before running publish" } } }