在扩展 'android' 上找不到 com.android.build.gradle.LibraryExtension 上的参数 [com.android.mylib] 的方法 namespace()

Could not find method namespace() for arguments [com.android.mylib] on extension 'android' of type com.android.build.gradle.LibraryExtension

提问人:Ifan 767 提问时间:2/18/2023 最后编辑:Ifan 767 更新时间:6/3/2023 访问量:11817

问:

我正在尝试按照此官方文档在android studio中创建一个库。但是在这个特定的项目中,我面临着这个问题。如果我创建新项目并创建新库,我不会遇到任何问题。这意味着只有这个项目有问题。

我的 Lib Gradle

插件 { ID 'com.android.library' }

android {
    namespace 'com.android.mylib'
    compileSdkVersion 33

defaultConfig {
    minSdkVersion 26
    targetSdkVersion 33

    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    consumerProguardFiles "consumer-rules.pro"
}

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}
compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

}

应用 Gradle

apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'

android {
    compileSdkVersion 33
    buildToolsVersion "30.0.2"
    testBuildType "beta"

    defaultConfig {
        applicationId "com.app.etc"
        minSdkVersion 23
        targetSdkVersion 33
        versionCode 327

我搜索了一些问题,但根据这些答案,一切似乎都是正确的。 我已经使缓存失效并重新启动了Android Studio。

这是错误。

 A problem occurred evaluating project ':mylibrary'

Caused by: 

org.gradle.internal.metaobject.AbstractDynamicObject$CustomMessageMissingMethodException:在类型为 com.android.build.gradle.LibraryExtension 的扩展“android”上找不到参数 [com.example.mylibrary] 的方法 namespace()。

android-studio build.gradle android-library

评论

0赞 progNewbie 4/27/2023
你发现问题出在哪里了吗?
1赞 Ifan 767 4/27/2023
这是android studio中的错误。我不得不创建另一个应用程序并将代码转移到那里。特别是,当涉及到 M1 mac 时,应用程序通常没有得到完全优化。

答:

6赞 Firooz Smart 6/3/2023 #1

这就是应用程序中使用的 Gradle 版本的问题,一些插件想要最新版本的 Gradle

尝试在以下位置更改 Gradle 版本:

  1. android/gradle/gradle-wrapper-properties 文件更改 gradle 版本 distributionUrl=https://services.gradle.org/distributions/gradle-7.5-all.zip
  2. android/build.gradle 文件 在 dependencies 下,将以下行更改为使用最新的 gradle 版本 类路径 'com.android.tools.build:gradle:7.5.2'

评论

0赞 DrumRobot 7/17/2023
我的项目与版本不兼容,所以我通过将 gradle 版本更改为7.5.2classpath 'com.android.tools.build:gradle:7.2.1'