Bry*_*ony 152 android kotlin android-studio android-gradle-plugin kotlin-android-extensions
我正在尝试重建我的Android Studio Gradle项目(主要包含Kotlin代码),但它UnableToDeleteFileException在清理/重建过程中开始抛出:
Execution failed for task ':app:clean'.
> Unable to delete file: C:\Users\User\KotlinGameEngine\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\23.0.1\jars\classes.jar
Run Code Online (Sandbox Code Playgroud)
在我尝试更改项目的包结构后,这种情况开始发生.不幸的是,我是通过重命名和移动源文件夹而不是通过Android Studio重构来实现的,这是一个坏主意.
我一整天都在寻找解决这个问题的方法,这些都是我试过无用的东西:
gradle和.gradle目录;.gradle我的用户目录中的目录;gradlew clean从AS终端运行;我尝试了一些有点成功的事情,但只让我再次执行一次干净并重新构建错误之前:
java.exe在AS运行时杀死进程(这在技术上可以每次都完成,但是它很繁琐并且减慢了构建过程)所以似乎编译Java进程可能由于某种原因锁定构建文件,但它也可能与Kotlin有关.我有一个(更成熟的)Java Android项目,我正在努力,虽然我在清理时无法重现此错误.这似乎只发生在我的Kotlin项目上.
有任何想法吗?
提前致谢.
我发现问题是由Kotlin Android插件引起的.当我apply plugin: 'kotlin-android'从模块的build.gradle文件中删除时,问题消失,并在重新插入时返回.随意提供任何洞察力.
最后一次更新不是原因.我发现如果一个项目包含一个Kotlin文件,那么重建和清理就会失败.它继续失败,即使所有Kotlin文件都被删除,直到后台Java进程被杀死,这意味着它对构建文件有某种锁定.我在这里提交了一个错误,其中包含更多细节和重现错误的步骤:KT-9440
小智 99
我杀死了任务管理器中的所有java TM进程,它让我重建
Bry*_*ony 28
在我向Kotlin bug跟踪器发布了一个错误报告之后,我在AOSP跟踪器上收到了第61300期的通知.这似乎是原因.既然我现在无能为力,我会将这个问题标记为已回答,如果修复了错误,我会更新答案.
与此同时,如果你正在运行Windows,我相信我找到了一个解决方法.您需要下载LockHunter(当然需要您自担风险),然后将以下内容添加到模块的gradle.build文件中,将该lockhunter变量替换为您的LockHunter.exe路径:
task clean(type: Exec) {
ext.lockhunter = '\"C:\\LockHunter.exe\"'
def buildDir = file(new File("build"))
commandLine 'cmd', "$lockhunter", '/delete', '/silent', buildDir
}
Run Code Online (Sandbox Code Playgroud)
这会导致LockHunter在app:clean任务运行时强制并静默地解锁和删除构建文件.
Bis*_*kar 21
使用此命令'gradlew clean'从终端清除项目.
小智 18
我用命令解决了:
taskkill /F /IM java.exe
Run Code Online (Sandbox Code Playgroud)
进而:
gradle assembleDebug
Run Code Online (Sandbox Code Playgroud)
我在Android Studio 2.2预览版1上遇到了相同的问题,@ AndresSuarez的解决方案是正确的,但是由于某些原因,我在任务管理器中找不到JAVA TM进程。所以我尝试了以下解决方案,它奏效了-
打开命令提示符,然后键入TASKKILL /F /IM java.exe。这将自动杀死所有JAVA TM进程。现在再次重新编译该应用程序,它将可以正常工作。
此外,您可以创建一个.bat文件,在其中添加上面的代码,并在每次遇到问题时运行它。
我遇到了同样的问题,这对我有用:
| 归档时间: |
|
| 查看次数: |
163438 次 |
| 最近记录: |