오류 : ': app : clean'작업에 대한 실행이 실패했습니다. 파일을 삭제할 수 없습니다


166

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

이것은 프로젝트의 패키지 구조를 변경하려고 시도한 후에 시작되었습니다. 불행히도 Android Studio를 통해 리팩토링하지 않고 소스 폴더의 이름을 바꾸고 이동하여 수행했습니다.

나는 하루 종일이 문제에 대한 해결책을 찾고 있었고 이것들은 소용이 없었습니다.

  • Gradle 동기화 수행
  • Java JRE 및 Java SDK 재설치
  • 최신 버전의 Android Studio (1.4) 재설치
  • 이전 AS 버전 (1.3)으로 롤백
  • AS 캐시 무효화 및 재시작
  • 프로젝트 디렉토리에서 gradle.gradle디렉토리 삭제
  • .gradle내 사용자 디렉토리에서 디렉토리를 삭제합니다 .
  • gradlew cleanAS 터미널에서 실행
  • 소스를 새 프로젝트에 수동으로 복사 (어떻게 든 프로젝트간에 지속되는 것은 이상합니다 ...)

약간의 성공으로 시도한 것들이지만 오류가 다시 발생하기 전에 한 번 더 정리하고 다시 작성하십시오.

  • AS를 닫고 빌드 파일을 수동으로 삭제 한 후 다시 엽니 다.
  • 살인 java.exe(빌드 프로세스 아래이 기술적마다 할 수 있지만, 그것은 지루한 및 감속) AS가 실행되는 동안 프로세스를

따라서 Java 프로세스를 컴파일하면 어떤 이유로 빌드 파일을 잠글 수 있지만 Kotlin과 관련이있을 수도 있습니다. 작업중 인 (더 성숙한) Java Android 프로젝트가 있지만 청소 할 때이 오류를 재현 할 수 없습니다. 내 Kotlin 프로젝트에서만 발생하는 것 같습니다.

최신 정보:

Kotlin Android 플러그인으로 인해 문제가 발생한 것으로 나타났습니다. apply plugin: 'kotlin-android'모듈 build.gradle파일 에서 제거하면 문제가 사라지고 다시 삽입하면 다시 나타납니다. 이에 대한 통찰력을 제공하십시오.

업데이트 2 :

마지막 업데이트가 원인이 아닙니다. 프로젝트에 Kotlin 파일이 포함되어 있으면 재구성 및 정리가 실패한다는 것을 알았습니다. 백그라운드 Java 프로세스가 종료 될 때까지 모든 Kotlin 파일이 제거 되더라도 계속 실패합니다. 즉, 빌드 파일에 어떤 종류의 잠금이 있습니다. 자세한 내용과 버그 재현 단계가 포함 된 버그를 여기에 제출했습니다 : KT-9440


3
파일 메뉴에서 캐시를 무효화하고 스튜디오를 다시 시작하십시오.
Mohammad Tauqir

나는 이미 그것을 시도했지만, 만일을 위해 다시 시도했다. 그래도 운이 없다.
Bryony

이런 종류의 문제는 종종 나에게 발생합니다. 첫 번째 옵션이 작동하지 않으면 시스템에서 로그 오프 한 다음 로그인 한 후 스튜디오를 시작하십시오.
Mohammad Tauqir

2
PC를 다시 시작했는데 문제가 계속 발생합니다. 그래도 도움을 주셔서 감사합니다.
Bryony

답변:


123

Android Studio 2.0 베타를 사용하는 경우이 문제가 나타날 수 있으며 (NTFS 파일 시스템에서 작업중인 경우) "Instant Run"이 원인 인 것 같습니다. 설정에서 "Instant Run"을 검색하고 확인란을 선택 취소하십시오.

버그 추적기에 문제 를 제기했습니다 .


sshfs를 사용하고 있습니다. 여기서도 같은 문제입니다. 인스턴트 런을 비활성화하면 나에게 효과적입니다.
노래

2
예, DISABLING INSTANT RUN Studio 2.0 베타 7에서이 예외를 해결했습니다
Yogesh Seralia

1
내 Android Studio 2.0은 특정 프로젝트를 새로 고쳤습니다. 나는 모든 것을 시도하고 실수 로이 답변을 따랐으며 질문과 다른 문제로 해결되었습니다. 나는 당신에게 더 많은 투표를 할 수 있기를 바랍니다! 감사합니다
Rachita Nanda

9
이것은 나를 위해 일했습니다. 누군가에게 도움이되는 경우 : 파일-> 설정-> 빌드, 실행, 배포-> 인스턴트 실행 인 Android Studio 버전 2.1에서 Instant Run을 비활성화하려면 첫 번째 상자 "Instant Run 활성화 ..."를 선택 취소하십시오.
nickandross

1
AS v2.1.3을 사용하고 있습니다. 내 경우에는 "Instant Run"상자가 이미 선택 해제되어 있으므로 확인하고 적용한 후 프로젝트 정리 및 리베이트 (오류가 여전히 존재 함)를 확인한 다음 적용하지 않고 적용하고 프로젝트 정리 및 리베이트 및 오류를 확인했습니다. 사라졌다.
jose

114

작업 관리자에서 모든 Java TM 프로세스를 종료했으며 다시 빌드 할 수있었습니다.


29
+1. 좀비 자바 프로세스가 문제였습니다. Win 10을 사용중인 경우 작업 관리자를 엽니 다. Java (TM) Platform SE 바이너리를 찾으십시오. 작업 끝내기.
일부 멍청한 학생

26
gradle --stop대안으로 멈춤 된 데몬을 중지하는 데 사용할 수 있습니다 .
Jayson Minard

1
프로세스를 자동 종료하는 방법이 있습니까? 매번 청소할 때마다 수동으로 죽여서 많은 시간을 낭비합니다.
아바타 Qing

필자의 경우 폴더를 정리하기 위해 열린 Meld (비교 및 병합 도구)가있었습니다
Armando

내 경우에는 Java TM를 찾지
못하여

41

파일 시도-> 캐시 무효화 및 다시 시작

이것은 나를 위해 일했다


"캐시 무효화 및 다시 시작"은 Android Studio를 Window 8 PC에 고정시킵니다. Android Studio 2.2.2를 사용하고 있습니다. 이 기능을 전혀 사용할 수 없습니다. 누구에게나 적합한 솔루션이 있습니까?
Nithinjith

파일-> 캐시 무효화 및 다시 시작이 작동하지만 시간이 오래 걸리는 것은 좋지 않습니다. SDK 27로 업데이트 할 때 Win10 파일 권한의 기본 문제가 다시 발생했습니다 (업데이트 메시지를 수락 함). 동일한 업데이트 후 AS는 NDK 15에 대해 울고 있지만 사용 가능한 NDK14 만 있으며 빌드 gradle 컴파일 SDK를 26으로 설정하면 울리지 않습니다. 우리가 두 세대 사이에있는 것처럼 보이나요? Win10 x64에는 재사용하기 위해 데이터를 지워야하는 에뮬레이터에도 문제가 있습니다. 고칠 세부 사항이 많은 것 같습니까?
Jan Bergström

30

Kotlin 버그 추적기에 버그 보고서를 게시 한 후 AOSP 추적기에서 이슈 61300 에 대한 알림을 받았습니다 . 그게 원인 인 것 같습니다. 현재로서는 할 수있는 일이 없으므로이 질문에 답변 한 것으로 표시하고 버그가 수정되면 답변을 업데이트하겠습니다.

그동안 Windows를 실행하는 경우 해결 방법을 찾았습니다. LockHunter (물론 위험 부담) 를 다운로드 한 다음 변수를 LockHunter.exe의 경로로 gradle.build바꾸어 모듈 파일에 다음을 추가해야합니다 lockhunter.

task clean(type: Exec) {
    ext.lockhunter = '\"C:\\LockHunter.exe\"'
    def buildDir = file(new File("build"))
    commandLine 'cmd', "$lockhunter", '/delete', '/silent', buildDir
}

이로 인해 app : clean 작업이 실행될 때 LockHunter가 빌드 파일을 강제로 자동으로 잠금 해제하고 삭제합니다.


나는 이것으로 깨끗한 문제를 해결했지만 응용 프로그램을 실행하기 위해 동일한 작업을 수행 할 수 없습니다. 여전히 같은 오류가 발생합니다. 어떤 생각을 가지고; 다른 걸로 깨끗하게 바꿀 수 있을까요?
코디 악

오류 : (21, 0) 표준 Gradle 수명주기 플러그인을 사용할 때 사용자 정의 '정리'작업을 선언하는 것은 허용되지 않습니다.
Shashwat Gupta

26

이 명령을 사용하여 터미널에서 프로젝트를 정리하십시오 gradlew clean.

여기에 이미지 설명을 입력하십시오


2
위 명령을 입력하면 다운로드, 압축 풀기 및 설치가 시작되었으며 시간이 다소 걸렸습니다. 그 후이 솔루션은 저에게 효과적이었습니다.
Dale

이 작업을 완료하는 데 11 분이 걸렸지 만 작동하는 것 같습니다. 이것이 정답입니다.
mwieczorek 2016 년

나는 위의 지시하지만 일을하지 않았다 .. :( .command하지 발견 내가 gradlew 청소를 실행 우분투입니다.
Abhijit Gujar

1
@AbhijitGujar ./gradlew clean대신 우분투를 사용해보십시오 . ( gradlew프로젝트 디렉토리에서 실행 파일을 실행합니다 .)
TerraPass

7
./gradlew clean나를 위해이 문제를 해결하지 못했습니다. 같은 오류가 다시 나타났습니다. 즉 "디렉토리를 삭제할 수 없습니다"
abggcv

12

디렉토리를 삭제하면 intermediates문제를 빠르게 해결할 수 있습니다.

프로젝트가 재 빌드 될 때 디렉토리가 재 빌드됩니다.


1
중간 디렉토리를 삭제하려고 시도했지만 Windows에서 디렉토리를 삭제할 수 없다고 알려줍니다. 기묘한.
tronman

그것은 하나의 프로젝트에서 나를 위해 일했지만 다른 프로젝트에서는 그렇지 않았습니다 :(
abggcv

7

@AndresSuarez의 Android Studio 2.2 미리보기 1에서 동일한 문제가 발생했지만 올바른 이유로 작업 관리자에서 JAVA TM 프로세스를 찾을 수 없었습니다. 그래서 다음 해결책을 시도해 보았습니다.

열기 명령 프롬프트를 입력합니다 TASKKILL /F /IM java.exe. 모든 JAVA TM 프로세스가 자동으로 종료됩니다. 이제 앱을 다시 컴파일하면 작동합니다.

또한 .bat 파일을 작성 하고 위의 코드를 추가하여 문제가 발생할 때마다 실행할 수 있습니다.


5

Android Studio 2.3 에서이 문제가 발생했습니다.

Android Studio를 다시 시작한 후 불만없이 정리할 수있었습니다.


5

나에게 이것은 활성화 된 디버깅 프로세스 때문에 발생했다 . 따라서 청소 또는 재 구축 전에 모든 활성 프로세스를 종료해야합니다. 성공을 막으려면 Invalidate Caches / Restart를 실행 하십시오 .


4

나는 같은 문제가 있었고 이것이 나를 위해 일했다.

  1. Android Studio를 닫습니다.
  2. 중간체 디렉토리 삭제 (Android Studio가 열려있는 경우이 디렉토리를 삭제할 수 없음)
  3. Android Studio를 다시 엽니 다


3

우분투 에서이 문제를 해결했습니다.

  1. Windows의 작업 관리자와 같이 시스템 (Ubuntu)에서 실행중인 프로세스를 확인하십시오.

    우분투 터미널 명령 ----> "gnome-system-monitor"를 실행하는 모든 프로세스를 나열

  2. 목록에서 JAVA 및 ANDROID 프로세스를 종료하거나 종료하십시오.

  3. 다시 스튜디오를 시작하고 프로젝트를 가져옵니다.

문제없이 작동합니다. 도움이 되었기를 바랍니다...

나는 이것이 이미 만들어지고 복제 된 프로세스의 문제라고 생각했습니다.


3

나에게는 내가 할 때 도움이 Exit Android Studio, 한 번 더 클릭 Clean Project(이 같은 오류가 나타납니다) 및 다음 클릭 Make Project그 과정의 후 - Run 'app'안드로이드 스튜디오에서 버튼을 클릭합니다.


3

app / build / outputs / apk 폴더 를 사용한 프로그램을 찾은 다음 폴더를 삭제하십시오.

Android Studio는 다시 빌드하기 전에 오래된 apk 폴더를 삭제해야한다고 생각합니다.


3

때때로 중간체가 문제를 일으키므로 삭제하고 프로젝트를 다시 빌드하십시오.

또는

단순히 cmd 명령을 실행하십시오-> gradlew clean

작업 공간의 프로젝트 폴더에 (나에게 효과적 임)


2

해결책은 매우 쉽습니다.

이것은 나를 위해 일한 솔루션 중 하나입니다.

프로젝트의 app / build / outputs / apk 폴더가 열려있을 수 있습니다.

이 폴더를 닫고 프로젝트를 다시 빌드하십시오. 그리고 해결 될 것입니다.


예,이 문제가 발생했습니다. build / report / checkstyle.html에 저장된 보고서 파일이있었습니다.이 파일을 닫으면 문제가 해결되었습니다.
tamtom


2

나를 위해 범인은 adb 파일을 사용하여 명령 줄을 통해 실제 장치에 응용 프로그램을 설치하고 시작하기 때문에 apk 파일을 들고 있습니다.

간단하게 :

작업 관리자> 프로세스 adb.exe 종료

그런 다음 파일을 자유롭게 삭제하고 프로젝트를 정리할 수 있습니다


2

네이티브 개발자를 반응

운영

sudo cd android && ./gradlew clean

그리고 당신이 릴리스 APK를 원한다면

sudo cd android && ./gradlew assembleRelease

누군가에게 도움이되기를 바랍니다.


1

로컬 백엔드 (로컬 Google 앱 엔진의 Java 서블릿)로 테스트하는 경우 실행중인 프로세스가 일부 파일을 차단합니다. 따라서 라이브 배포 할 수 없습니다. 따라서이 경우 정리 또는 빌드를 시작하기 전에 로컬 백엔드를 중지하여이 문제를 해결할 수 있습니다. "실행-> 백엔드 중지"아래에 옵션이 있습니다.


1

Android Studio 3.0에서도 동일한 문제가 발생했습니다. 이것은 그것을 고쳤다 :

  1. 스튜디오 닫기
  2. projectRoot / build / 및 projectRoot / app / build /를 삭제하십시오.
  3. 스튜디오 재시작

1

프로젝트를 D :에서 G : 드라이브로 옮긴 후에도 같은 문제가 발생했지만 디스크 검사로 문제가 해결되었습니다.

I 사용 CHKDSK / F / R / G (X) : ** 여기서 어떤 명령 줄 스위치를 사용 하였다 : **

/ F 디스크의 오류 수정

/ R 불량 섹터를 찾고 읽을 수있는 정보를 복구합니다 (/ F 포함).

/ X 필요한 경우 볼륨을 먼저 마운트 해제합니다 (/ F 포함) (중요)

참고 : / X는 드라이브를 마운트 해제하고 프로젝트 의 빌드 디렉토리를 수동으로 삭제할 수 있으므로 중요 합니다.

이제 프로젝트를 다시 빌드하십시오


이것은 효과가 있었다. 감사합니다! :) 그러나 거의 5 시간이 걸렸다. 완료 시간.
Rohit Sharma

1

나는이 정확한 문제를 스스로 해결했다.

문제는 다른 사람이 파일을 만들었으므로 컴퓨터에 대한 관리자 권한이 있어도 파일을 변경할 수 없다는 것입니다. 파일 또는 폴더의 속성으로 이동하여 소유권을 변경하거나 소유권을 추가해야합니다. 이 웹 페이지 는 필요한 작업을 단계별로 설명합니다.

위의 작업을 수행 한 후 파일 탐색기에서 파일을 찾아 수동으로 추출했습니다. 어쨌든 삭제하려고하면 안드로이드 스튜디오 프로젝트에 필요하다고 생각하지 않습니다.


1

리소스를 사용할 수있는 또 다른 응용 프로그램은 분명히 Android Studio의 Kotlin REPL입니다. 나는 그것을 닫은 다음 아무런 문제없이 다시 만들 수있었습니다.


0

이 문제는 안드로이드 스튜디오 2.0 안정적인 채널에서 나에게 나타 났으며 해결책은 안드로이드 스튜디오를 업데이트하는 동안 문제가 발생했기 때문에 신선한 안드로이드 스튜디오를 설치 하여이 문제를 해결했습니다. 이전 설치에 대한 모든 이전 파일을 삭제 한 후 Instant Run의 멋진 기능을 유지하기 위해


0

여전히 문제가있는 경우 최신 버전의 Android Studio (현재 2.1)로 업데이트하면 이전 버전의 Android Studio의 버그 일 수 있습니다. 이제 해결되었습니다.


나를 위해 2.2 미리보기 1에서 발생하므로 고정되어 있다고 생각하지 않습니다.
Rohan Kandwal

0

Android 스튜디오에서 프로젝트를 청소하고 다시 실행하면 문제가 해결되었습니다. "프로젝트 만들기"도 가능합니다.


0

나는 같은 문제가 있었고 프로젝트 폴더를 ext4 파티션으로 옮겨서 해결했습니다.


예, 다른 곳에서는 Android Studio / gradle / React Native / packager / watchman 시스템에 NTFS 파일 시스템에 문제가 있음을 읽었습니다.
Venryx

0

나는 같은 오류가 있었고 여러 가지 방법을 시도했지만 해결책은 / android 및 / android / app 디렉토리에서 빌드 폴더를 삭제하는 것이 었습니다.

실행 react-native run-android나를 위해 일했다.


0

프로젝트에서 누락 된 디렉토리를 전역 검색하여 해결했습니다. 해당 키워드가 포함 된 파일을 삭제하십시오. 모든 build.externalNativeBuild디렉토리를 수동으로 제거한 후 성공적으로 정리할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.