以下是Android Studio中的build.gradle代码
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.sg.blahblah"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
lintOptions {
checkReleaseBuilds true
abortOnError false
xmlReport true
htmlReport true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
lintOptions {
disable 'MissingTranslation'
}
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
compile 'com.android.support:support-v4:23.1.1'
compile 'com.android.support:cardview-v7:23.1.1'
compile 'com.google.android.apps.dashclock:dashclock-api:+'
compile 'com.roughike:bottom-bar:1.4.0.1'
compile 'com.diogobernardino:williamchart:2.2'
}
我收到以下错误: 错误:配置项目':app'时出现问题。
无法通知项目评估监听器。 com.android.build.gradle.tasks.factory.AndroidJavaCompile.setDependencyCacheDir(Ljava / IO /文件;)V
有人可以帮忙吗?
答案 0 :(得分:52)
我也遇到了这个问题。我通过项目
中的更改build.gradle
来修复它
更改强>
dependencies {
classpath 'com.android.tools.build:gradle:2.3.3'
}
我也改变了gradle-wrapper.properties中的distributionUrl
(全局版)
distributionUrl=https\://services.gradle.org/distributions/gradle-4.0-milestone-1-all.zip
并获得成功.FYI。
答案 1 :(得分:34)
我在通过禁用Instant Run
文件→设置→构建,执行,部署→即时运行和 取消选中启用即时运行。
希望它有效。
答案 2 :(得分:16)
更新到'com.android.tools.build:gradle:3.0.0'
要修复它,我必须将google()
repo添加到buildscript和模块存储库。这里的documentation仅提到添加到buildscript。
项目级build.gradle
buildscript {
repositories {
...
// You need to add the following repository to download the
// new plugin.
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0'
}
}
App-level build.gradle
repositories {
...
// Documentation doesn't specify this, but it must be added here
google()
}
<强> gradle-wrapper.properties 强>
...
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
答案 3 :(得分:10)
您需要检查您的gradle版本。 gradle -v
然后您应该知道您的gradle版本和您的gradle插件版本兼容。
示例:
gradle 4.6与gradle插件2.2不兼容。
所以需要将 com.android.tools.build:gradle 版本更新为 2.3.3 。
然后你需要检查 gradle / wrapper / gradle-wrapper.properties distributionUrl gradle版本
google Android Plugin for Gradle Release Notes
另一方面
使用较新的插件版本可能需要更新Android Studio
感谢@antek
答案 4 :(得分:7)
有类似的问题,问题是所包含库的版本不同。找出导致问题的原因,并使用stacktrace运行构建命令
./gradlew build --stacktrace
答案 5 :(得分:5)
在我的情况下,我遇到了wifi问题。确保您有有效的互联网连接
答案 6 :(得分:5)
这既不是问题的准确答案,也不是灵丹妙药。 但是,如果没有什么对您有用,例如无效缓存&amp;重启,检查构建依赖关系,禁用即时运行(我从不建议)等。
--stacktrace
构建,执行,部署&gt;编译器强> 引起:org.gradle.internal.resolve.ModuleVersionNotFoundException: 找不到com.squareup.okhttp3:logging-interceptor:3.9.1Net。
我在模块级gradle文件中拼错了依赖项名称。希望有所帮助
答案 7 :(得分:4)
在我的情况下,我只通过使缓存无效来解决此错误。
档案&gt;无效缓存/重新启动
答案 8 :(得分:3)
问题可能是你使用的是Gradle版而不是3版。 转到gradle / wrapper / gradle-wrapper.properties并将最后一行更改为:
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
答案 9 :(得分:3)
对于那些在团队中工作的人:
我删除了一些更改,包括更新构建工具版本,但我没有在我的机器上下载新版本的构建工具。下载新版本为我解决了这个问题
答案 10 :(得分:2)
通常它取决于Instant run或Gradle,但我尝试了两种变体,没有任何帮助。然后我浏览了idea.log
并看到了这个错误
Caused by: java.lang.RuntimeException: A conflict was found between the
following modules:
- com.android.support:support-core-utils:25.3.1
- com.android.support:support-core-utils:27.0.1
我真的不知道为什么Gradle Console
或Event Log
标签中没有显示此错误。然后我通过在android{}
块的末尾添加一些代码来修复它。
configurations.all {
resolutionStrategy {
failOnVersionConflict()
eachDependency { DependencyResolveDetails details ->
if (details.requested.name == 'support-core-utils') {
details.useVersion '25.3.1'//Or you can use 27.0.1 if it does not conflict with your other dependencies
}
}
}
答案 11 :(得分:2)
这很有趣,但对我来说有帮助:
File -> Setting -> Gradle -> disable offline work
答案 12 :(得分:2)
就我而言,我已在与模块相关的gradle文件中更改了Kotlin插件的版本,但未在root gradle文件中进行了更改。
答案 13 :(得分:1)
我已经解决了此问题,方法是清理所有Gradle缓存,停止Gradle Daemon进程,并使用以下命令成功创建了新的构建。确保当前目录为android。
rm -rf ~/.gradle/caches && ./gradlew --stop && ./gradlew cleanBuildCache && ./gradlew bundleRelease
我正在使用React Native。因此,我在package.json中的脚本中添加了以下内容,
"build-android": "rm -rf ~/.gradle/caches && cd android && ./gradlew --stop && ./gradlew cleanBuildCache && ./gradlew bundleRelease && cd ..",
答案 14 :(得分:1)
对我来说,此问题是由于插件和gradle的组合不兼容引起的。
我将它们添加到代码中以使其正常工作:
主要build.gradle
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0'
}
主要gradle-wrapper.properties:
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
答案 15 :(得分:1)
使用新的Google支持gradle插件(com.google.gms.google-services
)可能是由于com.google.android.gms.*
模块的某些依赖版本问题引起的。
通过使用带有--stacktrace
参数的build命令,您可能会看到根本原因。即:
./gradlew :app:dependencies --stacktrace
这可能会输出导致问题的原因:
原因:org.gradle.api.GradleException: 各种其他图书馆都在 [[15.0.2,15.0.2]请求存储库com.google.android.gms:play-services-measurement-base, [16.0.0,16.0.0]],但解析为16.0.0 。禁用插件并检查 您的依赖树使用./gradlew:app:dependencies。 com.google.gms.googleservices.GoogleServicesPlugin $ 1 $ _afterResolve_closure1.doCall(GoogleServicesPlugin.groovy:328) 在org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
答案 16 :(得分:1)
我遇到了这个问题,因为我在计算机上使用了 Charles代理,而且所有主机都启用了 SSL 。由于AS不信任我的代理,网络请求失败。 所以我必须为所有主机停用SSL 并重启我的Android Studio 。
答案 17 :(得分:0)
我启用了“离线工作” 文件->设置->构建,部署,执行-> Gradle 终于为我解决了这个问题。
答案 18 :(得分:0)
答案 19 :(得分:0)
就我而言,我没有安装目标SDK平台。我记得这个错误很简单,提示您自动安装它。值得检查一下。
答案 20 :(得分:0)
第一步:文件→设置→构建,执行,部署→即时运行,然后取消选中启用即时运行。 第二步:按Invalidate / Restart。 完成...。享受。
答案 21 :(得分:0)
唯一帮助我的是使用系统gradle而不是Android Studio的内置功能:
设置 - &gt;构建,执行,部署 - &gt;摇篮
选择使用本地gradle分发。要查找路径,您可以which gradle
支持which
程序。它可能是/usr/bin/gradle
。
另请参阅Error:Could not initialize class com.android.sdklib.repositoryv2.AndroidSdkHandler了解其他可能原因。
答案 22 :(得分:0)
我遇到了类似的问题。
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':app'.
> Failed to notify project evaluation listener.
> org.gradle.api.tasks.compile.CompileOptions.setBootClasspath(Ljava/lang/String;)V
* Try:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.0-milestone-1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 7s
Build step 'Invoke Gradle script' changed build result to FAILURE
Build step 'Invoke Gradle script' marked build as failure
Finished: FAILURE
关键是您需要找到一种解决此类问题的方法,而不是 解决这个问题。
根据上面的日志,最重要的信息是:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output. Run with --scan to get full insights.
大多数Gradle的构建问题都将得到解决,因为当您使用特定的Gradle build命令时,可以获得更详细,有用的信息。
*clean project
./gradlew clean
*build project
./gradlew build
*build for debug package
./gradlew assembleDebug or ./gradlew aD
*build for release package
./gradlew assembleRelease or ./gradlew aR
*build for release package and install
./gradlew installRelease or ./gradlew iR Release
*build for debug package and install
./gradlew installDebug or ./gradlew iD Debug
*uninstall release package
./gradlew uninstallRelease or ./gradlew uR
*uninstall debug package
./gradlew uninstallDebug or ./gradlew uD
*all the above command + "--info" or "--debug" or "--scan" or "--stacktrace" can get more detail information.
然后我发现问题与Gradle的版本有关,当我将Gradle的版本从5.0更改为4.1时,就可以了。
答案 23 :(得分:0)
答案 24 :(得分:0)
就我而言,我必须将所有 Firebase库更新为最新版本。
答案 25 :(得分:0)
只需重启 Android Studio-通常情况下,一切都会恢复正常。 (实际上不需要使缓存无效+重新启动)。
答案 26 :(得分:0)
org.gradle.configureondemand=false
将此代码添加到您的 gradle.properties 文件中,它将很好地工作,但您可能会收到其他错误。
答案 27 :(得分:0)
对我来说,我必须专门停止gradlew
并清除缓存,这解决了我的问题:
./gradlew --stop
// Delete all cache files in your project. With git: `git -xfd clean`
// Delete global cache dir. On Mac it is located in `~/.gradle/caches
在这里找到: https://github.com/realm/realm-java/issues/5650#issuecomment-355011135
答案 28 :(得分:0)
我忽略了将 JDK13 与 Android Studio结合使用,因此我选择了以下设置,此问题已解决:
步骤1。(文件>其他设置>默认项目结构> SDK位置> JDK位置)
Embedded JDK
第2步。(文件>项目结构>项目)
gradle plugin 3.6.3
gradle 5.6.4
答案 29 :(得分:0)
我有buildToolsVersion "27.0.1"
,将其升级为27.0.2
解决了问题。
另外,我的Android支持代码版本为27.0.2
,因此它们未与buildToolsVersion
答案 30 :(得分:-1)
只需更改gradle-wrapper.properties的分发URL
放置:https://services.gradle.org/distributions/gradle-4.10.1-all.zip