/* * This file is a part of the SteamWar software. * * Copyright (C) 2020 SteamWar.de-Serverteam * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program 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 Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ import org.apache.tools.ant.taskdefs.condition.Os plugins { id 'java' } group 'de.steamwar' version '' ext { buildName = 'CommonCore' artifactName = 'commoncore' uberJarName = "${buildName}-all.jar" jarName = "${artifactName}.jar" libs = "${buildDir}/libs" if (Os.isFamily(Os.FAMILY_WINDOWS)) { operatingSystem = "windows" } else { operatingSystem = "unix" } } compileJava.options.encoding = 'UTF-8' sourceCompatibility = 1.8 targetCompatibility = 1.8 sourceSets { main { java { srcDirs = ['src/'] } resources { srcDirs = ['src/'] exclude '**/*.java', '**/*.kt' } } test { java { srcDirs = ['testsrc'] } resources { srcDirs = ['testsrc'] exclude '**/*.java', '**/*.kt' } } } repositories { mavenCentral() } dependencies { compileOnly 'org.projectlombok:lombok:1.18.22' testCompileOnly 'org.projectlombok:lombok:1.18.22' annotationProcessor 'org.projectlombok:lombok:1.18.22' testAnnotationProcessor 'org.projectlombok:lombok:1.18.22' testImplementation 'junit:junit:4.13.2' testImplementation 'org.hamcrest:hamcrest:2.2' } task buildProject { description 'Build this project' group "Steamwar" dependsOn build } task finalizeProject { description 'Finalize this project' group "Steamwar" doLast { if ("${buildDir}" == null) { return } delete fileTree("${libs}").matching { exclude("${uberJarName}") } file(libs + "/" + uberJarName).renameTo(file(libs + "/" + jarName)) } } build.finalizedBy(finalizeProject)