📌  相关文章
📜  修复 Android Studio 中的“错误找不到参数 [com.android.support:appcompat-v7:26.0.0] 的方法实现()”

📅  最后修改于: 2022-05-13 01:58:43.966000             🧑  作者: Mango

修复 Android Studio 中的“错误找不到参数 [com.android.support:appcompat-v7:26.0.0] 的方法实现()”

执行 是用于库声明的依赖配置,由 Google 在 Android Gradle Plugin 3.0 中引入。在此配置中声明了实现依赖项,该配置是内部的,并不意味着向消费者公开。 “Could not find method implementation() for arguments [com.android.support:appcompat-v7:26.0.0]”错误的主要原因是Gradle无法识别实现配置。在本文中,我们将讨论 5 种不同的方法来解决此错误。

  • 方法一:更新到最新的 Gradle 版本
  • 方法2 :将“实现”改为“编译”
  • 方法 3 :将依赖项移动到模块 build.gradle
  • 方法4 :将应用插件:“Java”更改为“java-library”
  • 方法5 :将“implementationSdkVersion”更改为“compileSdkVersion”

方法一:更新到最新的 Gradle 版本

如果您在旧版本的 Gradle 中使用“实施”配置,Gradle 将无法识别它并抛出此错误。因此,将 Gradle 和 Gradle 构建插件更新到最新版本可以帮助解决这个问题。

第 1 步:导航到app > Gradle Script > build.gradle(项目: app)。现在在“依赖项”块中,将类路径更新为最新版本的 Gradle 构建插件。

dependencies { classpath "com.android.tools.build:gradle:4.0.2" }

第 2 步:现在导航到app > Gradle Script > gradle-wrapper.properties并将“ distributionUrl ”更新为最新版本的 Gradle。添加此代码后,同步您的项目以解决此问题。

distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip

方法二:将“实现”改为“编译”

如果您在低于 3.0 的 Gradle 插件版本中使用“实施”配置,Gradle 将无法识别它并抛出此错误。因此,将“实现”更改为“编译”是可行的。导航到app > Gradle Script > build.gradle (Module:app) 。在依赖项块中,将“ implementation ”更改为“ compile ”,将“ testImplementation ”更改为“ testCompile ”,将“ androidTestImplementation ”更改为“ androidTestCompile ”。

dependencies {
    compile fileTree(dir: "libs", include: ["*.jar"])
    compile 'androidx.appcompat:appcompat:1.3.0'
    compile 'androidx.constraintlayout:constraintlayout:2.0.4'
    compile 'com.google.firebase:firebase-database:20.0.0'
    compile 'com.google.firebase:firebase-analytics'
    compile platform('com.google.firebase:firebase-bom:28.0.1')
    compile 'com.google.android.material:material:1.3.0'
    compile 'com.google.android:flexbox:2.0.1'
    compile 'androidx.cardview:cardview:1.0.0'
    compile 'com.google.firebase:firebase-storage:20.0.0'
    testCompile 'junit:junit:4.12'
    androidTestCompile  'androidx.test.ext:junit:1.1.2'
    androidTestCompile 'androidx.test.espresso:espresso-core:3.3.0'
}

方法 3:将依赖项移至模块 build.gradle

在 Android Studio 中,有两个 build.gradle 文件。一个用于项目级别,另一个用于模块级别。如果在项目级别的 build.gradle 文件中添加应用程序依赖项,则会引发错误“找不到 implementation() 方法”。将这些依赖项添加到模块 build.gradle 可以帮助解决这个问题。

方法4:将应用插件:“Java”更改为“java-library”

Java库插件通过提供有关Java库的特定知识来扩展Java插件的功能。将模块级别 build.gradle中的代码从

apply plugin: 'java'

apply plugin: 'java-library'

添加此代码后,同步您的项目以解决此问题。

方法5:将“implementationSdkVersion”改为“compileSdkVersion”

构建应用程序时使用的编译器版本由“compileSdkVersion”决定,而Gradle中没有“implementationSdkVersion”这样的方法。因此将“implementationSdkVersion”更改为“compileSdkVersion”可以解决这个问题。导航到应用 > Gradle 脚本 > build.gradle (Module:app)。将代码从

android {
   implementationSdkVersion 30
   .......
   }

android {
   compileSdkVersion 30
   .......
   }

添加此代码后,同步您的项目以解决此问题。