我试图在我的应用程序中添加一个依赖项,我不小心修改了错误的build.gradle文件,现在我的应用程序不再正确构建。
这是我的错误:
Error:FAILURE: Build failed with an exception.
* What went wrong:
Task 'generateDebugSources' not found in project ':app'.
* Try:
Run gradle tasks to get a list of available tasks. Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
我正在尝试实现存在here的代码,但我最终在Android Studio中破坏了东西,因为我是gradle系统的新手。
我编辑的文件是.idea / gradle.xml和build.gradle,我将在下面包含这些文件:
的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:1.1.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
gradle.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
<option value="$PROJECT_DIR$/app" />
</set>
</option>
</GradleProjectSettings>
</option>
</component>
</project>
我试图尽可能接近默认文件,但最终导致问题变得更糟,我无法再构建我的项目了。
此外,我使用的是Android Studio 1.1.0,它显示为最新更新。
提前致谢,如果我需要提供更多信息,请告诉我。
答案 0 :(得分:24)
这里没有提到,所以也许它可以帮助一些人。 得到这个错误并通过做一个gradle同步来解决它(不知怎的,android studio并没有暗示它)。
答案 1 :(得分:9)
在Android Studio菜单中: 转到文件 - &gt;无效的缓存/重启
重要提示: 考虑到它还将清除&#34;本地历史&#34;如果它对你很重要。
答案 2 :(得分:4)
检查你的settings.gradle。您的模块gradle必须包含在settings.gradle中。
include ':app'
您必须更改包含应用程序模块名称的内容。如果没有,请尝试删除该包含,然后重新启动Android工作室:)
答案 3 :(得分:0)
遇到同样的问题并通过更新TO最新的构建工具版本修复它:
buildToolsVersion '24.0.1'
OR
buildToolsVersion '24'
答案 4 :(得分:0)
Chris Deligan部分正确。
基本上,您需要解决gradle依赖关系,以便Android Studio能够正确识别*/*
中确实存在generateDebugSources
任务(对我来说,这是相反的方式 - 我需要Android Studio识别:app
不存在。)
执行generateDebugSources
确实为我解决了问题,但这是因为gradle并未及早为我解决依赖关系。执行include ':app'
并重建项目有帮助,因为Studio正确地重建了这些依赖项。 (哦,删除它也有帮助)
=============================================== =========================
简介 -
执行重新生成依赖项的操作。这样做的方法是:
include ':app'
- 在项目gradle文件中添加或删除它,然后进行重建。include :app
- 从终端运行这个帮助。答案 5 :(得分:0)
我有同样的问题,幸运的是我做了最近的备份,并且我发现app文件夹中缺少build.gradle文件。我将其复制回/AppName/app/build.gradle下的项目中,错误消失了。
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.company.appname"
minSdkVersion 15
targetSdkVersion 25
versionCode 25
versionName "2.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:25.1.0'
compile project(':BaseGameUtils')
compile 'com.google.android.gms:play-services:10.0.1'
compile 'com.google.android.gms:play-services-plus:10.0.1'
compile 'com.google.android.gms:play-services-ads:10.0.1'
compile 'com.google.firebase:firebase-ads:10.0.1'
}
apply plugin: 'com.google.gms.google-services'
答案 6 :(得分:0)
我遇到了同样的问题。发生此错误是因为我在不知不觉中删除了 app build.gradle 文件,所以我在我的应用目录中创建了一个新的build.gradle文件,并将所有必需的代码放置在那里,然后进行了同步此文件。此后项目成功构建。
答案 7 :(得分:0)
也发生在我身上,因为我在另一个分支中更改了构建变体,并且该更改在所有其他分支中接管。 因此,我所做的是:
所有分支的问题都解决了。
PS - 每当您想更改分支时,都不允许接管其他分支的更改。否则,您也必须对当前分支重复此过程。
答案 8 :(得分:-6)
我解决了我的问题;我发现新项目没有gradle的问题,所以我创建了一个新项目并转移了我所有的src代码文件,它再次正常工作。