plugins { id 'java' id 'java-library' } group 'me.totalfreedom' version '1.0.0' subprojects { apply plugin: 'java' apply plugin: 'java-library' repositories { jcenter() mavenCentral() maven { name = 'Scissors' url = 'https://repo.scissors.gg/repository/scissors-snapshot/' } maven { name = "Aikar" url = 'https://repo.aikar.co/content/groups/aikar/' } maven { name = "JitPack" url = 'https://jitpack.io' } } dependencies { compileOnly 'me.totalfreedom.scissors:Scissors-API:1.19.4-R0.1-SNAPSHOT' compileOnly 'org.javassist:javassist:3.29.1-GA' compileOnly 'org.apache.commons:commons-lang3:3.12.0' compileOnly 'org.apache.commons:commons-collections4:4.2' compileOnly 'com.google.guava:guava:31.1-jre' compileOnly 'com.google.code.gson:gson:2.8.8' compileOnly 'org.reflections:reflections:0.10.2' compileOnly 'org.slf4j:slf4j-api:1.7.36' } sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 tasks.withType(JavaCompile).configureEach { options.encoding = 'UTF-8' } test { useJUnitPlatform() } var buildOrder = -1; afterEvaluate { if (buildOrder == -1) { buildOrder = 0 } } } tasks.register('buildChain') { dependsOn subprojects.sort { a, b -> def buildOrderA = a.hasProperty('buildOrder') ? a.buildOrder : 0 def buildOrderB = b.hasProperty('buildOrder') ? b.buildOrder : 0 buildOrderA <=> buildOrderB }.collect { ":${it.path}:build" } }