Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android生成的BuildConfig位于子模块包中,而不是应用程序模块中_Android_Android Gradle Plugin_Git Submodules_Android Buildconfig - Fatal编程技术网

Android生成的BuildConfig位于子模块包中,而不是应用程序模块中

Android生成的BuildConfig位于子模块包中,而不是应用程序模块中,android,android-gradle-plugin,git-submodules,android-buildconfig,Android,Android Gradle Plugin,Git Submodules,Android Buildconfig,我为project创建了一些子模块,这些子模块是从git导入的 当我为像,com.app.BuildConfig这样的应用程序导入BuildConfig时,我得到了一个错误 我只能导入我的一个子模块的BuildConfig,比如,com.submodule.BuildConfig 我认为Gradle文件并没有什么特别之处,但我唯一能想象的是Gradle问题 所以请检查我的gradle文件 格拉德尔项目 buildscript { apply from: ‘dependencies.grad

我为project创建了一些子模块,这些子模块是从git导入的

当我为像,
com.app.BuildConfig
这样的应用程序导入
BuildConfig
时,我得到了一个错误

我只能导入我的一个子模块的
BuildConfig
,比如,
com.submodule.BuildConfig

我认为Gradle文件并没有什么特别之处,但我唯一能想象的是Gradle问题

所以请检查我的gradle文件

格拉德尔项目

buildscript {
   apply from: ‘dependencies.gradle’
   repositories {
       google()
       jcenter()
   }
   dependencies {
       classpath “com.android.tools.build:gradle:$gradleVersion”
       classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion”
       classpath “org.jetbrains.kotlin:kotlin-android-extensions:$kotlinVersion”
       classpath “android.arch.navigation:navigation-safe-args-gradle-plugin:1.0.0"
   }
}
allprojects {
   repositories {
       maven {
           url “https://maven.google.com”
       }
       google()
       jcenter()
   }
}
subprojects {
   configurations {
       ktlint
   }
   dependencies {
       ktlint “com.github.shyiko:ktlint:0.31.0"
   }
   task ktlint(type: JavaExec) {
       main = ‘com.github.shyiko.ktlint.Main’
       classpath = configurations.ktlint
       args ‘../**/*.kt’
   }
   task ktlintFormat(type: JavaExec) {
       main = ‘com.github.shyiko.ktlint.Main’
       classpath = configurations.ktlint
       args ‘-F’, ‘../**/*.kt’
   }
   afterEvaluate { project ->
       check.dependsOn ktlint
   }
}
task clean(type: Delete) {
   delete rootProject.buildDir
}
apply plugin: ‘com.android.application’
apply plugin: ‘kotlin-android’
apply plugin: ‘kotlin-android-extensions’
apply plugin: ‘kotlin-kapt’
apply plugin: “androidx.navigation.safeargs”
android {
   compileSdkVersion project.compileSdkVersion
   buildToolsVersion project.buildToolsVersion
   defaultConfig {
       applicationId “--------”
       minSdkVersion project.minSdkVersion
       targetSdkVersion project.targetSdkVersion
       versionCode 1
       versionName “1.0”
       testInstrumentationRunner “android.support.test.runner.AndroidJUnitRunner”
   }
   dataBinding {
       enabled = true
   }
   buildTypes {
       release {
           minifyEnabled false
           proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
       }
   }
   packagingOptions {
       pickFirst ‘META-INF/atomicfu.kotlin_module’
   }
   compileOptions {
       sourceCompatibility = 1.8
       targetCompatibility = 1.8
   }
   kotlinOptions {
       jvmTarget = “1.8”
   }
   androidExtensions {
       experimental = true
   }
}
dependencies {
   implementation fileTree(dir: ‘libs’, include: [‘*.jar’])
   implementation project(‘:submodule1’)
   implementation project(‘:submodule2’)
   implementation project(‘:submodule3’)
   implementation “org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion”
   implementation ‘androidx.appcompat:appcompat:1.0.2’
   implementation ‘androidx.constraintlayout:constraintlayout:1.1.3’
   implementation “io.reactivex.rxjava2:rxjava:${rxJava2Version}”
   implementation “io.reactivex.rxjava2:rxandroid:${rxAndroid2Version}”
   implementation ‘org.jetbrains.kotlinx:kotlinx-coroutines-android:1.2.1’
   implementation “androidx.lifecycle:lifecycle-extensions:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-viewmodel:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-livedata:$archLifecycleVersion”
   implementation “org.jetbrains.anko:anko-sdk25:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7-commons:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7:${ankoVersion}”
   implementation “com.squareup.moshi:moshi-kotlin:1.8.0”
   implementation “androidx.navigation:navigation-ui-ktx:$navigation”
   implementation “androidx.navigation:navigation-fragment-ktx:$navigation”
   implementation “androidx.core:core-ktx:1.2.0-beta01"
   implementation “com.trello.rxlifecycle3:rxlifecycle-android-lifecycle-kotlin:${trelloRxLifeCycle}”
   testImplementation “junit:junit:4.12"
   androidTestImplementation “com.android.support.test:runner:1.0.2”
   androidTestImplementation “com.android.support.test.espresso:espresso-core:3.0.2"
   implementation (‘com.airbnb.android:lottie:3.0.0’)
}
apply plugin: ‘com.android.library’
apply plugin: ‘kotlin-android’
apply plugin: ‘kotlin-android-extensions’
apply plugin: ‘kotlin-kapt’
android {
   compileSdkVersion project.compileSdkVersion
   buildToolsVersion project.buildToolsVersion
   defaultConfig {
       minSdkVersion project.minSdkVersion
       targetSdkVersion project.targetSdkVersion
       versionCode 1
       versionName “1.0”
       testInstrumentationRunner “android.support.test.runner.AndroidJUnitRunner”
   }
   dataBinding {
       enabled = true
   }
   buildTypes {
       release {
           minifyEnabled false
           proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
       }
   }
   androidExtensions {
       experimental = true
   }
}
dependencies {
   implementation fileTree(dir: ‘libs’, include: [‘*.jar’])
   implementation “org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion”
   implementation ‘androidx.appcompat:appcompat:1.0.2’
   implementation ‘androidx.constraintlayout:constraintlayout:1.1.3’
   implementation ‘org.jetbrains.kotlinx:kotlinx-coroutines-android:1.2.1’
   implementation “io.reactivex.rxjava2:rxjava:${rxJava2Version}”
   implementation “io.reactivex.rxjava2:rxandroid:${rxAndroid2Version}”
   implementation “androidx.lifecycle:lifecycle-extensions:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-viewmodel:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-livedata:$archLifecycleVersion”
   implementation “org.jetbrains.anko:anko-sdk25:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7-commons:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7:${ankoVersion}”
   implementation “com.squareup.moshi:moshi-kotlin:1.8.0"
   testImplementation “junit:junit:4.12”
   androidTestImplementation “com.android.support.test:runner:1.0.2"
   androidTestImplementation “com.android.support.test.espresso:espresso-core:3.0.2”
}
应用程序渐变

buildscript {
   apply from: ‘dependencies.gradle’
   repositories {
       google()
       jcenter()
   }
   dependencies {
       classpath “com.android.tools.build:gradle:$gradleVersion”
       classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion”
       classpath “org.jetbrains.kotlin:kotlin-android-extensions:$kotlinVersion”
       classpath “android.arch.navigation:navigation-safe-args-gradle-plugin:1.0.0"
   }
}
allprojects {
   repositories {
       maven {
           url “https://maven.google.com”
       }
       google()
       jcenter()
   }
}
subprojects {
   configurations {
       ktlint
   }
   dependencies {
       ktlint “com.github.shyiko:ktlint:0.31.0"
   }
   task ktlint(type: JavaExec) {
       main = ‘com.github.shyiko.ktlint.Main’
       classpath = configurations.ktlint
       args ‘../**/*.kt’
   }
   task ktlintFormat(type: JavaExec) {
       main = ‘com.github.shyiko.ktlint.Main’
       classpath = configurations.ktlint
       args ‘-F’, ‘../**/*.kt’
   }
   afterEvaluate { project ->
       check.dependsOn ktlint
   }
}
task clean(type: Delete) {
   delete rootProject.buildDir
}
apply plugin: ‘com.android.application’
apply plugin: ‘kotlin-android’
apply plugin: ‘kotlin-android-extensions’
apply plugin: ‘kotlin-kapt’
apply plugin: “androidx.navigation.safeargs”
android {
   compileSdkVersion project.compileSdkVersion
   buildToolsVersion project.buildToolsVersion
   defaultConfig {
       applicationId “--------”
       minSdkVersion project.minSdkVersion
       targetSdkVersion project.targetSdkVersion
       versionCode 1
       versionName “1.0”
       testInstrumentationRunner “android.support.test.runner.AndroidJUnitRunner”
   }
   dataBinding {
       enabled = true
   }
   buildTypes {
       release {
           minifyEnabled false
           proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
       }
   }
   packagingOptions {
       pickFirst ‘META-INF/atomicfu.kotlin_module’
   }
   compileOptions {
       sourceCompatibility = 1.8
       targetCompatibility = 1.8
   }
   kotlinOptions {
       jvmTarget = “1.8”
   }
   androidExtensions {
       experimental = true
   }
}
dependencies {
   implementation fileTree(dir: ‘libs’, include: [‘*.jar’])
   implementation project(‘:submodule1’)
   implementation project(‘:submodule2’)
   implementation project(‘:submodule3’)
   implementation “org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion”
   implementation ‘androidx.appcompat:appcompat:1.0.2’
   implementation ‘androidx.constraintlayout:constraintlayout:1.1.3’
   implementation “io.reactivex.rxjava2:rxjava:${rxJava2Version}”
   implementation “io.reactivex.rxjava2:rxandroid:${rxAndroid2Version}”
   implementation ‘org.jetbrains.kotlinx:kotlinx-coroutines-android:1.2.1’
   implementation “androidx.lifecycle:lifecycle-extensions:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-viewmodel:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-livedata:$archLifecycleVersion”
   implementation “org.jetbrains.anko:anko-sdk25:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7-commons:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7:${ankoVersion}”
   implementation “com.squareup.moshi:moshi-kotlin:1.8.0”
   implementation “androidx.navigation:navigation-ui-ktx:$navigation”
   implementation “androidx.navigation:navigation-fragment-ktx:$navigation”
   implementation “androidx.core:core-ktx:1.2.0-beta01"
   implementation “com.trello.rxlifecycle3:rxlifecycle-android-lifecycle-kotlin:${trelloRxLifeCycle}”
   testImplementation “junit:junit:4.12"
   androidTestImplementation “com.android.support.test:runner:1.0.2”
   androidTestImplementation “com.android.support.test.espresso:espresso-core:3.0.2"
   implementation (‘com.airbnb.android:lottie:3.0.0’)
}
apply plugin: ‘com.android.library’
apply plugin: ‘kotlin-android’
apply plugin: ‘kotlin-android-extensions’
apply plugin: ‘kotlin-kapt’
android {
   compileSdkVersion project.compileSdkVersion
   buildToolsVersion project.buildToolsVersion
   defaultConfig {
       minSdkVersion project.minSdkVersion
       targetSdkVersion project.targetSdkVersion
       versionCode 1
       versionName “1.0”
       testInstrumentationRunner “android.support.test.runner.AndroidJUnitRunner”
   }
   dataBinding {
       enabled = true
   }
   buildTypes {
       release {
           minifyEnabled false
           proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
       }
   }
   androidExtensions {
       experimental = true
   }
}
dependencies {
   implementation fileTree(dir: ‘libs’, include: [‘*.jar’])
   implementation “org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion”
   implementation ‘androidx.appcompat:appcompat:1.0.2’
   implementation ‘androidx.constraintlayout:constraintlayout:1.1.3’
   implementation ‘org.jetbrains.kotlinx:kotlinx-coroutines-android:1.2.1’
   implementation “io.reactivex.rxjava2:rxjava:${rxJava2Version}”
   implementation “io.reactivex.rxjava2:rxandroid:${rxAndroid2Version}”
   implementation “androidx.lifecycle:lifecycle-extensions:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-viewmodel:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-livedata:$archLifecycleVersion”
   implementation “org.jetbrains.anko:anko-sdk25:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7-commons:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7:${ankoVersion}”
   implementation “com.squareup.moshi:moshi-kotlin:1.8.0"
   testImplementation “junit:junit:4.12”
   androidTestImplementation “com.android.support.test:runner:1.0.2"
   androidTestImplementation “com.android.support.test.espresso:espresso-core:3.0.2”
}
子模块1级

buildscript {
   apply from: ‘dependencies.gradle’
   repositories {
       google()
       jcenter()
   }
   dependencies {
       classpath “com.android.tools.build:gradle:$gradleVersion”
       classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion”
       classpath “org.jetbrains.kotlin:kotlin-android-extensions:$kotlinVersion”
       classpath “android.arch.navigation:navigation-safe-args-gradle-plugin:1.0.0"
   }
}
allprojects {
   repositories {
       maven {
           url “https://maven.google.com”
       }
       google()
       jcenter()
   }
}
subprojects {
   configurations {
       ktlint
   }
   dependencies {
       ktlint “com.github.shyiko:ktlint:0.31.0"
   }
   task ktlint(type: JavaExec) {
       main = ‘com.github.shyiko.ktlint.Main’
       classpath = configurations.ktlint
       args ‘../**/*.kt’
   }
   task ktlintFormat(type: JavaExec) {
       main = ‘com.github.shyiko.ktlint.Main’
       classpath = configurations.ktlint
       args ‘-F’, ‘../**/*.kt’
   }
   afterEvaluate { project ->
       check.dependsOn ktlint
   }
}
task clean(type: Delete) {
   delete rootProject.buildDir
}
apply plugin: ‘com.android.application’
apply plugin: ‘kotlin-android’
apply plugin: ‘kotlin-android-extensions’
apply plugin: ‘kotlin-kapt’
apply plugin: “androidx.navigation.safeargs”
android {
   compileSdkVersion project.compileSdkVersion
   buildToolsVersion project.buildToolsVersion
   defaultConfig {
       applicationId “--------”
       minSdkVersion project.minSdkVersion
       targetSdkVersion project.targetSdkVersion
       versionCode 1
       versionName “1.0”
       testInstrumentationRunner “android.support.test.runner.AndroidJUnitRunner”
   }
   dataBinding {
       enabled = true
   }
   buildTypes {
       release {
           minifyEnabled false
           proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
       }
   }
   packagingOptions {
       pickFirst ‘META-INF/atomicfu.kotlin_module’
   }
   compileOptions {
       sourceCompatibility = 1.8
       targetCompatibility = 1.8
   }
   kotlinOptions {
       jvmTarget = “1.8”
   }
   androidExtensions {
       experimental = true
   }
}
dependencies {
   implementation fileTree(dir: ‘libs’, include: [‘*.jar’])
   implementation project(‘:submodule1’)
   implementation project(‘:submodule2’)
   implementation project(‘:submodule3’)
   implementation “org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion”
   implementation ‘androidx.appcompat:appcompat:1.0.2’
   implementation ‘androidx.constraintlayout:constraintlayout:1.1.3’
   implementation “io.reactivex.rxjava2:rxjava:${rxJava2Version}”
   implementation “io.reactivex.rxjava2:rxandroid:${rxAndroid2Version}”
   implementation ‘org.jetbrains.kotlinx:kotlinx-coroutines-android:1.2.1’
   implementation “androidx.lifecycle:lifecycle-extensions:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-viewmodel:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-livedata:$archLifecycleVersion”
   implementation “org.jetbrains.anko:anko-sdk25:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7-commons:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7:${ankoVersion}”
   implementation “com.squareup.moshi:moshi-kotlin:1.8.0”
   implementation “androidx.navigation:navigation-ui-ktx:$navigation”
   implementation “androidx.navigation:navigation-fragment-ktx:$navigation”
   implementation “androidx.core:core-ktx:1.2.0-beta01"
   implementation “com.trello.rxlifecycle3:rxlifecycle-android-lifecycle-kotlin:${trelloRxLifeCycle}”
   testImplementation “junit:junit:4.12"
   androidTestImplementation “com.android.support.test:runner:1.0.2”
   androidTestImplementation “com.android.support.test.espresso:espresso-core:3.0.2"
   implementation (‘com.airbnb.android:lottie:3.0.0’)
}
apply plugin: ‘com.android.library’
apply plugin: ‘kotlin-android’
apply plugin: ‘kotlin-android-extensions’
apply plugin: ‘kotlin-kapt’
android {
   compileSdkVersion project.compileSdkVersion
   buildToolsVersion project.buildToolsVersion
   defaultConfig {
       minSdkVersion project.minSdkVersion
       targetSdkVersion project.targetSdkVersion
       versionCode 1
       versionName “1.0”
       testInstrumentationRunner “android.support.test.runner.AndroidJUnitRunner”
   }
   dataBinding {
       enabled = true
   }
   buildTypes {
       release {
           minifyEnabled false
           proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
       }
   }
   androidExtensions {
       experimental = true
   }
}
dependencies {
   implementation fileTree(dir: ‘libs’, include: [‘*.jar’])
   implementation “org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion”
   implementation ‘androidx.appcompat:appcompat:1.0.2’
   implementation ‘androidx.constraintlayout:constraintlayout:1.1.3’
   implementation ‘org.jetbrains.kotlinx:kotlinx-coroutines-android:1.2.1’
   implementation “io.reactivex.rxjava2:rxjava:${rxJava2Version}”
   implementation “io.reactivex.rxjava2:rxandroid:${rxAndroid2Version}”
   implementation “androidx.lifecycle:lifecycle-extensions:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-viewmodel:$archLifecycleVersion”
   implementation “androidx.lifecycle:lifecycle-livedata:$archLifecycleVersion”
   implementation “org.jetbrains.anko:anko-sdk25:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7-commons:${ankoVersion}”
   implementation “org.jetbrains.anko:anko-appcompat-v7:${ankoVersion}”
   implementation “com.squareup.moshi:moshi-kotlin:1.8.0"
   testImplementation “junit:junit:4.12”
   androidTestImplementation “com.android.support.test:runner:1.0.2"
   androidTestImplementation “com.android.support.test.espresso:espresso-core:3.0.2”
}

感谢您的建议。

每次生成同步时,生成配置文件都会自动生成。请尝试清理生成并重新生成dhi,@ArulMani。谢谢你的建议,但我尝试了所有的事情,比如清理和重建,使缓存无效,删除构建文件夹,等等。。。每次生成同步时,都不会自动生成use.build配置文件。请尝试清理生成并重新生成dhi,@ArulMani。谢谢你的建议,但我尝试了所有的事情,比如清理和重建,使缓存无效,删除构建文件夹,等等。。。没用。