//buildscript { // ext.kotlin_version = '1.9.10' // repositories { // google() // mavenCentral() // maven { url 'https://developer.huawei.com/repo/' } // } // // dependencies { // classpath 'com.android.tools.build:gradle:7.1.3' // classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // classpath 'com.google.gms:google-services:4.3.8' // classpath 'com.huawei.agconnect:agcp:1.8.0.300' // classpath "com.android.tools:r8:8.2.33" // } //} // //allprojects { // repositories { // google() // mavenCentral() // maven { url 'https://developer.huawei.com/repo/' } // } //} // //rootProject.buildDir = '../build' //subprojects { // project.buildDir = "${rootProject.buildDir}/${project.name}" // project.evaluationDependsOn(':app') //} // //tasks.register("clean", Delete) { // delete rootProject.buildDir //} allprojects { repositories { google() mavenCentral() maven { url 'https://developer.huawei.com/repo/' } maven { url "https://artifactory.ess-dev.com/artifactory/gradle-dev-local" } } // Exclude old BouncyCastle globally to avoid duplicate classes configurations.all { exclude group: 'org.bouncycastle', module: 'bcprov-jdk16' } tasks.withType(JavaCompile).configureEach { sourceCompatibility = JavaVersion.VERSION_21 targetCompatibility = JavaVersion.VERSION_21 } tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { kotlinOptions { jvmTarget = "21" } } subprojects { afterEvaluate { project -> if (project.hasProperty('android')) { project.android { if (namespace == null) { namespace project.group } buildFeatures { if (buildConfig == null) { buildConfig true } } compileOptions { sourceCompatibility JavaVersion.VERSION_21 targetCompatibility JavaVersion.VERSION_21 } } } // Force Java 17 for all JavaCompile tasks in all subprojects (including plugins) project.tasks.withType(JavaCompile).configureEach { sourceCompatibility = JavaVersion.VERSION_21 targetCompatibility = JavaVersion.VERSION_21 } // Force Kotlin JVM target for all subprojects project.tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { kotlinOptions { jvmTarget = "21" } } } } } rootProject.buildDir = '../build' subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" } subprojects { project.evaluationDependsOn(':app') } tasks.register("clean", Delete) { delete rootProject.layout.buildDirectory }