groovy.lang.MissingMethodException:没有方法签名:ApplicationVariantData.getName()

时间:2021-05-18 11:08:14

标签: android gradle-kotlin-dsl

这个问题在 SO 上被问了很多次,但我找不到任何适合我的解决方案。 我正在尝试从 groovy 迁移到 kotlin DSL 并收到以下错误。

所有转换都已完成到 kotlin DSL,但是当我尝试同步时,问题开始出现。我正在使用最新版本的 android gradle 插件。

 A problem occurred configuring project ':app'.
   Failed to notify project evaluation listener.
com.android.build.gradle.internal.crash.ExternalApiUsageException: groovy.lang.MissingMethodException: No signature of method: com.android.build.gradle.internal.variant.ApplicationVariantData.getName() is applicable for argument types: () values: []
 Possible solutions: getAt(java.lang.String), getClass()
KotlinJvmAndroidCompilation with name 'debug' not found.

请让我知道在这方面可以做什么,提前致谢。

plugins {
    id("com.android.application")
    id("com.google.firebase.crashlytics")
    id("io.hansel.preprocessor")
    id("com.google.firebase.firebase-perf")
    kotlin("android")
    kotlin("android.extensions")
    kotlin("kapt")
    id("com.google.gms.google-services")
}

buildscript {
    apply("../buildSrc/config.gradle.kts")
}

repositories {
    maven { url = uri(Config.Repositories.hansel_io) }
}

allprojects {
    repositories {
        google()
        jcenter()
        flatDir {
            dirs("libs")
        }
    }
}
android {
    signingConfigs {
    ....
    }
}
defaultConfig {
...
}

buildTypes {
      getByName("debug") {
      ...
      }
      getByName("release") {
      ...
      }
}

flavorDimensions("version")
productFlavors {
    create("development") {
    ...
    }
    
    applicationVariants.all {
        val variant = this
        variant.outputs
            .map { it as BaseVariantOutputImpl }
            .forEach { output ->
                ....
            }
    }

}
    
compileOptions {
      targetCompatibility = JavaVersion.VERSION_1_8
      sourceCompatibility = JavaVersion.VERSION_1_8
}

buildFeatures {
    dataBinding = true
}

0 个答案:

没有答案