def isBuildModule = rootProject.ext.module.isBuildModule if (Boolean.valueOf(isBuildModule)) { apply plugin: 'com.android.application' } else { apply plugin: 'com.android.library' } apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt' apply plugin: 'kotlin-parcelize' apply plugin: 'com.google.dagger.hilt.android' android { compileSdkVersion rootProject.ext.android.compileSdkVersion buildToolsVersion rootProject.ext.android.buildToolsVersion defaultConfig { minSdkVersion rootProject.ext.android.minSdkVersion targetSdkVersion rootProject.ext.android.targetSdkVersion versionCode rootProject.ext.android.versionCode versionName rootProject.ext.android.versionName multiDexEnabled true javaCompileOptions { annotationProcessorOptions { arguments += [ "room.schemaLocation":"$projectDir/schemas".toString(), "room.incremental":"true", "room.expandProjection":"true", AROUTER_MODULE_NAME: project.getName() ] } } } buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() } buildFeatures { viewBinding true } sourceSets { main { if (Boolean.valueOf(isBuildModule)) { manifest.srcFile 'src/main/module/AndroidManifest.xml' } else { manifest.srcFile 'src/main/AndroidManifest.xml' java { //排除java/debug文件夹下的所有文件 exclude '*module' } } } } lintOptions { checkReleaseBuilds false // Or, if you prefer, you can continue to check for errors in release builds, // but continue the build even when errors are found: abortOnError false } } kapt { arguments { arg("AROUTER_MODULE_NAME", project.getName()) } generateStubs = true useBuildCache = true javacOptions { option("-Xmaxerrs", 500) } } dependencies { implementation project(":common:common-base") implementation project(":common:common-service") kapt rootProject.ext.compiler["arouterCompiler"] implementation rootProject.ext.roomLibs kapt rootProject.ext.compiler["roomCompiler"] compileOnly(rootProject.ext.jetpack["hilt"]) kapt rootProject.ext.compiler["hiltAndroidCompiler"] if (Boolean.valueOf(isBuildModule)) { implementation project(":modules:module-collect") implementation project(":modules:module-content") implementation project(":modules:module-login") } }