//-----------------所有module共有的配置-------------- // 作为组件/APP应用运行 apply plugin: rootProject.ext.isBuildModule ? 'com.android.application' : 'com.android.library' apply plugin: 'kotlin-android' apply plugin: 'kotlin-parcelize' apply plugin: 'kotlin-kapt' android { compileSdkVersion rootProject.ext.android.compileSdk defaultConfig { minSdk rootProject.ext.android.minSdk targetSdk rootProject.ext.android.targetSdk versionCode rootProject.ext.android.versionCode versionName rootProject.ext.android.versionName testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" multiDexEnabled true // ARouter配置 kapt { arguments { arg("AROUTER_MODULE_NAME", project.getName()) } } } kotlinOptions { jvmTarget = "1.8" } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } sourceSets { main { jniLibs.srcDirs = ['libs'] if (rootProject.ext.isBuildModule) { //独立运行 manifest.srcFile 'src/main/alone/AndroidManifest.xml' } else { //合并到宿主 manifest.srcFile 'src/main/AndroidManifest.xml' resources { //正式版本时,排除alone文件夹下所有调试文件 exclude 'src/main/alone/*' } } } } buildTypes { debug { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } buildFeatures { dataBinding true } lintOptions { abortOnError false disable 'MissingTranslation' disable 'ExtraTranslation' } } dependencies { implementation project(path: ':lib_base') // kapt无法像api那样穿透(从lib_common带过来),所以不能放在lib_common中,而是放在这里让每个组件都引入一份 kapt rootProject.ext.dependencies.arouter_compiler }