Newer
Older
sklauncher / build.gradle
plugins {
    id "com.github.johnrengelman.shadow" version "7.1.2"
    id 'io.freefair.lombok' version '5.3.0'
}

println """
*******************************************
 You are building SKCraft Launcher! 

 Output files will be in [subproject]/build/libs
*******************************************
"""

subprojects {
    apply plugin: 'java'

    group = 'com.skcraft'
    version = '4.6-SNAPSHOT'

    java {
        toolchain {
            languageVersion.set(JavaLanguageVersion.of(8))
        }
    }

    repositories {
        mavenCentral()
    }

    if (JavaVersion.current().isJava8Compatible()) {
        // Java 8 turns on doclint which we fail
        tasks.withType(Javadoc) {
            options.addStringOption('Xdoclint:none', '-quiet')
        }
    }

    tasks.withType(JavaExec) {
        workingDir = new File(rootDir, "run/")
        workingDir.mkdirs()
    }

    // Work around gradle shadow bug
    // see https://github.com/johnrengelman/shadow/issues/713
    afterEvaluate {
        startScripts {
            dependsOn(shadowJar)
        }

        distTar {
            dependsOn(shadowJar)
        }

        distZip {
            dependsOn(shadowJar)
        }

        startShadowScripts {
            dependsOn(jar)
        }

        shadowDistTar {
            dependsOn(jar)
        }

        shadowDistZip {
            dependsOn(jar)
        }
    }
}

task clean {
    subprojects {
        rootProject.clean.dependsOn tasks.matching { it.name == "clean" }
    }
}