【问题标题】:Error:(1, 0) Plugin with id 'com.android.application' not found错误:(1, 0) 未找到 ID 为“com.android.application”的插件
【发布时间】:2014-09-07 19:48:31
【问题描述】:

这是我第一次尝试 Android Studio。我安装了 0.8.0 并更新到 0.8.2。一旦创建项目,我就会收到错误消息:

错误:(1, 0) 未找到 ID 为“com.android.application”的插件

C:\Users\Bob\AndroidStudioProjects\HelloAgain6\app\build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.example.bob.helloagain6"
        minSdkVersion 15
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

和 C:\Users\Bob\AndroidStudioProjects\HelloAgain6\build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.12.+'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

【问题讨论】:

  • 我遇到了这个问题,但突然我看到顶层build.gradle被删除了:),所以我从git存储库中复制它,一切正常
  • 对我来说也是一样,我的项目级别的 build.gradle 在时髦的合并过程中被移动到与包装器属性相同的文件夹中,因此它没有在它应该在的根目录中找到它跨度>

标签: android gradle android-gradle-plugin


【解决方案1】:

更新答案(2020 年 12 月 2 日)

最新的 Gradle: 6.5

版本检查:

  • ./gradlew -v

如何更新:

  • 设置网址:./gradlew wrapper --gradle-version=6.5 --distribution-type=all
  • 更新:./gradlew wrapper

最新的 Android Gradle 插件: 4.1.0

如果您将以下代码 sn -p 添加到您的 build.gradle 文件的顶部。 Gradle 将更新构建工具。

buildscript {
    repositories {
        google() // For Gradle 4.0+
        maven { url 'https://maven.google.com' } // For Gradle < 4.0
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:4.1.0'
    }
}

在此处阅读更多信息:https://developer.android.com/studio/build/index.html,并在此处了解版本兼容性:https://developer.android.com/studio/releases/gradle-plugin.html#updating-gradlehttps://dl.google.com/dl/android/maven2/index.html

原答案

我遇到了同样的错误,您需要确保您的 Gradle 版本与您的 Android Gradle 插件兼容。

Gradle 的最新版本是 2.0,但您需要使用 1.12 才能使用 Android Gradle 插件。

【讨论】:

  • +1 表示几个月后您的答案仍在更新
  • @P1nGu1n 没问题!如果每个人都能看到最新的信息,那就更容易了。
  • @MartinPfeffer 没问题。我将继续保持更新!
  • 很好的答案,虽然我不禁想知道为什么Google会像这样部署Android Studio。这个错误是你在开始一个新项目时看到的第一件事。我的意思是,他们在想什么!?
  • Android 开发有很多愚蠢的事情。为什么我们应该为所有这些 gradle 版本而烦恼
【解决方案2】:

如果您错过添加顶级构建文件,可能会发生这种情况。

只需将 build.gradle 添加到顶层即可。

应该是这样的

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.xx.y'
    }
}

allprojects {
    repositories {
        mavenCentral()
    }
}

【讨论】:

  • 这正是他所拥有的。
  • 文件的现有内容呢?直接删除?
  • 如果你在做firebase教程,你需要classpath 'com.android.tools.build:gradle:3.2.1'classpath 'com.google.gms:google-services:4.0.1'
【解决方案3】:

就我而言,我从 GitHub 下载了项目,但 Gradle 文件丢失了。 所以我只是创建了一个成功构建的新项目。然后复制粘贴 Gradle 丢失的文件。重建项目对我有用。

【讨论】:

  • 在尝试其他方法几个小时后,这解决了我的问题
  • 从哪里复制文件。我也缺少一个 gradle 文件,但就我而言,它是 app 目录中的那个
【解决方案4】:

根目录文件:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:x.x.x'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

Gradle-wrapper.properties 文件:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-x.x-all.zip

【讨论】:

    【解决方案5】:

    我写这篇文章的目的不是为许多人提供解决方案,而是为了一些可能犯简单错误的人,例如为从 SVN 导入项目指定错误的 url。它是为那些家伙准备的:)

    当我从 SVN 导入项目时发生这种情况 -> Studio 自动提示打开项目 -> 它要求 Gradle 位置 -> D:\Software\Android\gradle-2.5 -> 然后出现错误。

    不同 SVN 分支中的同一个项目可以很好地与我在 Studio 中配置的 Gradle 插件和 Gradle 配合使用。我尝试更改 Android Gradle 插件和 Gradle 以使其在错误的分支上运行,但没有任何成功。

    最后,我发现这是我的以下错误: 我尝试单独导入特定的应用程序,而不是与依赖库项目一起导入应用程序。 我用于导入的 url 最初在末尾有应用程序项目的名称。一旦我删除它,并指定包含应用程序项目及其依赖项目的父目录,一切都很顺利:)

    【讨论】:

      【解决方案6】:

      我在处理此错误消息一小时后发现了问题:

      我不小心将根build.gradle 重命名为builde.gradle 中的文件名,所以Android Studio 不再识别它了。

      将其重命名build.gradle 解决了问题!

      【讨论】:

        【解决方案7】:

        还是报错

         Could not find com.android.tools.build:gradle:3.0.0.
        

        问题:jcenter() 没有所需的库

        解决方案:添加 google() 作为 repo

        buildscript {
            repositories {
                google()
                jcenter()
        
            }
            dependencies {
        
                classpath "com.android.tools.build:gradle:3.0.0"
            }
        }
        

        【讨论】:

          【解决方案8】:

          在项目级别的build.gradle文件中,我已经替换了这一行

          classpath 'com.android.tools.build:gradle:3.6.3'
          

          这个

          classpath 'com.google.gms:google-services:4.3.3'
          

          添加这两行并同步后,一切都变得很好。 希望这会对某人有所帮助。

          【讨论】:

            【解决方案9】:

            我使用 IntelliJ IDEA 13.1.5 并在 build.gradle 文件中的 dependencies 中更改了 Picasso 和 Retrofit 的版本后遇到了同样的问题。我尝试使用许多解决方案,但没有结果。 然后我从远程 git 克隆了我的项目(我在更改依赖项版本之前推送它)并且它工作了!之后,我刚刚关闭了当前项目并再次将旧项目从 Gradle 文件导入 IntelliJ IDEA,它也可以正常工作!所以,我认为这是 IDEA、Gradle 和 Android 插件交叉的奇怪错误。我希望这些信息对 IDEA 用户或其他任何人都有用。

            【讨论】:

            • 能否通过具体的代码示例给出技术答案?
            【解决方案10】:

            转到您的成绩文件,您可以在其中看到:

            buildscript {
                repositories {
                    jcenter()
                }
                dependencies {
                    classpath 'com.android.tools.build:gradle:2.1.0'
            
            
                    // NOTE: Do not place your application dependencies here; they belong
                    // in the individual module build.gradle files
                }
            }
            

            并将classpath 更改为:

            buildscript {
                repositories {
                    jcenter()
                }
                dependencies {
            //        classpath 'com.android.tools.build:gradle:2.1.0'
                    classpath 'com.android.tools.build:gradle-experimental:0.7.0-alpha1'
            
                    // NOTE: Do not place your application dependencies here; they belong
                    // in the individual module build.gradle files
                }
            }
            

            【讨论】:

            • 没有。 gradle-experimental 是“实验性的”。这与问题无关。
            • @JaredBurrows OP 的问题中的错误也可能发生在 gradle-experimental 中。今天发生在我身上。但是,VladimirKulyk 应该知道,仅建议对 NDK 构建使用 gradle-experimental。
            【解决方案11】:

            其他答案对我不起作用,我猜 ButterKnife3.0.0 alpha5 之间发生了问题。

            但是,我发现当我注释任何一个句子时,无论是 BUtterKnife 还是 3.0.0 alpha5,它都可以正常工作。

            因此,您应该避免重复或冲突

            【讨论】:

            • 当我注释任何一个句子时,无论是 ButterKnife 还是 3.0.0 alpha5 ,它都能正常工作。
            • 请提出一个新问题,而不是在这里回答一个问题。
            • 请记住,每个 alpha 版本都没有准备好投入生产。不得在代码中使用 alpha 版本。
            • 对不起...我在电脑上解决了这个问题,但我不明白为什么...。
            • 也许这种非常规的方法会有所帮助。注释任何一个都将对 Android Studio 3.0.0 alpha5 有所帮助。
            【解决方案12】:

            供将来参考:对我来说,这个问题完全是由于我没有以管理员身份运行 Android Studio 造成的。我将 Windows 上的快捷方式配置为始终以管理员身份运行,但在重新安装 Android Studio 后,快捷方式被替换,因此它在没有管理员权限的情况下运行。这导致了很多不透明的错误,包括这个问题中的错误。

            【讨论】:

              【解决方案13】:

              当我不小心重命名该行时发生了这个问题

              apply plugin: 'com.android.application'
              

              在文件app/build.gradle 上以其他名称命名。因此,我通过将其更改为原来的方式来修复它。

              【讨论】:

                【解决方案14】:

                这只是在我使用 Android Studio 1.3.2 时发生的,但是,由于我刚刚创建了项目,我将其删除并重新创建。
                看来Android Studio第一次没有正确创建它,甚至没有像预期的那样创建项目文件夹。

                【讨论】:

                • Android Studio 版本应与插件版本匹配。
                【解决方案15】:

                如果您在模块目录中使用 android plugin 1.2.3 运行模块任务,则会出现问题。试试这个:

                ../gradlew -b ../build.gradle  -c ../settings.gradle  :module:xxx
                

                【讨论】:

                • 这个命令非常老套,Gradle 1.2.3 非常老旧。
                【解决方案16】:

                确保您的两个 build.gradle 和 settings.gradle 文件位于 https://developer.android.com/studio/build/index.html 中所述的正确目录中

                然后在 Visual Studio 中打开“作为现有项目”

                Gradle 对此非常挑剔。

                【讨论】:

                  【解决方案17】:

                  在我的顶级build.gradle 进行以下更改以更新到最新版本的 gradle 后,我收到了此错误消息:

                  //classpath 'com.android.tools.build:gradle:2.3.2' old
                  classpath 'com.android.tools.build:gradle:2.3.3' //new
                  

                  当我连接到一个敌对的工作场所代理后面时,我愚蠢地做出了改变。代理导致新版本 gradle 的 .jar 文件损坏。这可以通过检查罐子来验证它们是否尺寸异常或是否可以解压缩。

                  为了修复错误,我在家中连接了网络(不在代理后面)并从终端刷新依赖项:

                  ./gradlew --refresh-dependencies
                  

                  这导致重新下载较新版本的gradle,错误不再出现。

                  【讨论】:

                    【解决方案18】:

                    检查拼写,我的是 'com.android.aplication'

                    【讨论】:

                      【解决方案19】:

                      当您在项目根目录中同时存在 settings.gradlesettings.gradle.kts 文件时(可能包含相同的模块),也可能会发生这种情况。您应该只有其中一个文件。

                      【讨论】:

                      • 正确。当我直接使用 build.gradle 导入项目时发生这种情况,发现重复的 Gradle 和属性文件
                      【解决方案20】:

                      我有类似的问题,我做了以下事情来解决它。 我提到了https://developer.android.com/studio/build 并在应用插件行之前复制/粘贴以下这些行

                      repositories {
                          google()
                          jcenter()
                      }
                      
                      dependencies {
                          classpath 'com.android.tools.build:gradle:4.0.0'
                      }
                      

                      }

                      【讨论】:

                        【解决方案21】:

                        [FOR FLUTTER] 转到您的构建 Gradle,然后检查您是否有三个路径

                        dependencies {
                            classpath 'com.android.tools.build:gradle:3.5.0'
                            classpath 'com.google.gms:google-services:4.3.2'
                            classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
                        }
                        

                        我以某种方式删除了 android 工具类路径并收到了错误。

                        【讨论】:

                          【解决方案22】:

                          模块应用 build.gradle 文件

                          apply plugin: 'com.android.application'
                          
                          model{
                          
                          
                              android {
                                  compileSdkVersion 23
                                  buildToolsVersion  "23.0.2"
                          
                                  defaultConfig.with {
                                      applicationId "com.iamsafe"
                                      minSdkVersion 15
                                      targetSdkVersion 23
                          
                          
                          
                          
                          
                                  }
                               buildTypes {
                                      debug {
                                          minifyEnabled = false
                                          useProguard = true
                                          proguardFiles.add(file('proguard-rules.txt'))
                          
                          
                                      }
                                  }
                          
                          
                          
                              }
                          
                          }
                          
                          
                          
                          dependencies {
                              compile 'com.android.support:support-v4:23.0.2'
                              compile files('libs/asmack-android-8-0.8.10.jar')
                              compile files('libs/commons-io-2.0.1.jar')
                              compile files('libs/httpclient-osgi-4.2.1-sources.jar')
                              compile files('libs/httpcore-4.3.2.jar')
                              compile files('libs/httpmime-4.1.2.jar')
                          }
                          
                          
                          project build.gradle
                          
                          // Top-level build file where you can add configuration options common to all sub-projects/modules.
                          buildscript {
                              repositories {
                                  jcenter()
                              }
                              dependencies {
                                  classpath 'com.android.tools.build:gradle:2.10'
                              }
                          }
                          
                          allprojects {
                              repositories {
                                  jcenter()
                              }
                          }
                          

                          【讨论】:

                            【解决方案23】:

                            在这种情况下,请检查以下代码

                            dependencies {
                                classpath 'com.android.tools.build:gradle:**1.5.0**'
                            }
                            

                            gradle-wrapper.properties 在您的项目目录中检查下面的disctributionUrl

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

                            如果它们彼此不兼容,那么您最终会遇到这个问题。

                            对于com.android.tools.build:gradle:1.5.,您需要至少 2.8 的版本,但如果您切换到更高版本,例如 com.android.tools.build:gradle:2.1.0,则需要将您的 gradle 更新到 2.9 及更高版本,这可以通过在 gradle-wrapper 中更改 distributionUrl 来完成.properties 到 2.9 或更高版本如下

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

                            【讨论】:

                              【解决方案24】:

                              如果您在 Windows 上工作,则必须由管理员启动 Android Studio 名称。 它解决了我的问题

                              【讨论】:

                                【解决方案25】:

                                只需确保在创建应用程序时正确放置了 http 和 https 代理

                                【讨论】:

                                  猜你喜欢
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 2023-03-19
                                  • 1970-01-01
                                  • 2020-02-17
                                  • 2015-10-14
                                  • 1970-01-01
                                  相关资源
                                  最近更新 更多