/* * This file is part of Baritone. * * Baritone is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Baritone is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with Baritone. If not, see . */ allprojects { apply plugin: 'java' apply plugin: "xyz.wagyourtail.unimined" apply plugin: "maven-publish" archivesBaseName = rootProject.archives_base_name def vers = "" try { vers = 'git describe --always --tags --first-parent --dirty'.execute().text.trim() } catch (Exception e) { println "Version detection failed: " + e } if (!vers.startsWith("v")) { println "using version number: " + rootProject.mod_version version = rootProject.mod_version } else { version = vers.substring(1) println "Detected version " + version } group = rootProject.maven_group sourceCompatibility = targetCompatibility = JavaVersion.toVersion(project.java_version) java { toolchain { languageVersion.set(JavaLanguageVersion.of(sourceCompatibility.majorVersion.toInteger())) } } repositories { maven { name = 'spongepowered-repo' url = 'https://repo.spongepowered.org/repository/maven-public/' } maven { name = 'fabric-maven' url = 'https://maven.fabricmc.net/' } maven { name = 'impactdevelopment-repo' url = 'https://impactdevelopment.github.io/maven/' } maven { name = "ldtteam" url = "https://maven.parchmentmc.net/" } // for the newer version of launchwrapper maven { name = "multimc-maven" url = "https://files.multimc.org/maven/" metadataSources { artifact() } } mavenCentral() maven { name = 'babbaj-repo' url = 'https://babbaj.github.io/maven/' } } dependencies { compileOnly "org.spongepowered:mixin:${project.mixin_version}" compileOnly "org.ow2.asm:asm:${project.asm_version}" implementation "dev.babbaj:nether-pathfinder:${project.nether_pathfinder_version}" implementation 'com.google.code.findbugs:jsr305:3.0.2' } unimined.minecraft(sourceSets.main, true) { version rootProject.minecraft_version mappings { intermediary() mojmap() parchment("1.20.6", "2024.05.01") devFallbackNamespace "official" } } tasks.withType(JavaCompile).configureEach { it.options.encoding = "UTF-8" def targetVersion = project.java_version.toInteger() if (JavaVersion.current().isJava9Compatible()) { it.options.release = targetVersion } } } unimined.minecraft { runs.off = true defaultRemapJar = false } archivesBaseName = archivesBaseName + "-common" sourceSets { api { compileClasspath += main.compileClasspath runtimeClasspath += main.runtimeClasspath } main { compileClasspath += api.output runtimeClasspath += api.output } test { compileClasspath += main.compileClasspath + main.runtimeClasspath + main.output runtimeClasspath += main.compileClasspath + main.runtimeClasspath + main.output } launch { compileClasspath += main.compileClasspath + main.runtimeClasspath + main.output runtimeClasspath += main.compileClasspath + main.runtimeClasspath + main.output } schematica_api { compileClasspath += main.compileClasspath runtimeClasspath += main.runtimeClasspath } main { compileClasspath += schematica_api.output runtimeClasspath += schematica_api.output } } dependencies { testImplementation 'junit:junit:4.13.2' } jar { from sourceSets.main.output, sourceSets.launch.output, sourceSets.api.output } javadoc { options.addStringOption('Xwerror', '-quiet') // makes the build fail on travis when there is a javadoc error options.linkSource true options.encoding "UTF-8" // allow emoji in comments :^) source = sourceSets.api.allJava classpath += sourceSets.api.compileClasspath }