我面临Android Studio 3的问题,使用构建目标27和支持lib 27.0.0的gradle android插件3
Error:Execution failed for task ':module:mockableAndroidJar'.
> Output file [[...]/build/generated/mockable-android-27.v3.jar] already exists.
我必须不时地从生成的文件夹中清除或手动删除所有mockable-android jar。所以这意味着我不是要获得更好的构建时间,而是大多数时候都要清理项目。
答案 0 :(得分:3)
在再次运行任务之前,只需清理现有的jar。运行clean
确实有效,但我认为它有点激烈。相反,让android生成的任务依赖于一个非常特定的清理任务:
task cleanAndroidMock(type: Delete) {
description = 'Deletes the mockable Android jar'
delete fileTree("${project.buildDir}/generated") {
include 'mockable-android*.jar'
}
}
project.afterEvaluate {
tasks['mockableAndroidJar'].dependsOn cleanAndroidMock
}
答案 1 :(得分:1)
我遇到了这个问题。虽然,使用API 28平台工具。我从路径中删除并重新安装,对我有用。
答案 2 :(得分:0)
我有这个问题以及我使用修改过的android.jar(它显示了所有隐藏的API)。 我没有使用单元测试,并且在Android Studio 2.2.2中没有明显的方法可以禁用它,所以我找到了解决此问题的方法:
转到文件 - >设置 - >构建,执行,部署 - >编译器 添加到"命令行选项": -x:app:prepareReleaseUnitTestDependencies -x:app:mockableAndroidJar -x:app:compileReleaseUnitTestSources 按"确定"并尝试再次重建项目。 现在,将始终跳过单元测试编译任务,并且不会抛出任何错误。
答案 3 :(得分:0)
尝试进入菜单:构建 - >清洁项目。
或者您可以尝试菜单:文件 - > Invalidade缓存/重新启动
两者都适合我!
答案 4 :(得分:0)
最简单的解决方案是导航到给定路径[[...]/build/generated/mockable-android-27.v3.jar]
并简单地删除文件mockable-android-27.v3.jar
。返回android studio并重新构建。