1. 에러 내용
빌드를 진행하던 도중 아래와 같은 내용의 에러가 발생하면서 빌드가 캔슬 됨.
2 files found with path 'META-INF/DEPENDENCIES'.
Adding a packagingOptions block may help, please refer to
https://developer.android.com/reference/tools/gradle-api/7.3/com/android/build/api/dsl/ResourcesPackagingOptions
for more information
2. 에러 원인
프로젝트 gradle에 implement 되어있는 외부 라이브러리들의 버전이 변경 혹은 추가 되면서 기존에 존재하던 Meta 파일과 캐시가 중복되는 현상이 발생했기 때문.
3. 해결 방법
근본적인 해결방법은 라이브러리의 버전을 맞춰주는 것인데, 외부 라이브러리를 여러개 사용하다보면 서로 다른 라이브러리들 간의 버전 충돌이 충분히 생길수가 있다.
또한, 그 버전은 라이브러리를 사용하는 개발자가 수정이 불가능하기 때문에 성공가능성이 낮다.
따라서 gradle에서 프로젝트 파일들을 패키징 하는 과정에서 중복되는 Meta 파일들을 제외시키는 방법을 사용한다.
그 방법으로 아래 코드를 app gradle 파일 android 블록 내부에 작성한다.
<bash />
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
}
필자는 Dependency 항목에서만 해당 에러가 검출되었기 때문에 위와같이 'META-INF/DEPENDENCIES'만 작성하였는데,
다른 부분에서 해당 에러가 발생하였다면 exclude '에러 내용' 을 아래에 추가로 기입해주면 된다.
'Android' 카테고리의 다른 글
[안드로이드] 웹뷰(WebView)(4) - 쿠키&세션 알아보기🍪 (0) | 2024.01.05 |
---|---|
[안드로이드] Room Primary Key 자동 생성 하는 방법 (0) | 2023.10.18 |
[안드로이드] 가로모드(Landscape) 대응하기 (0) | 2023.10.10 |
[안드로이드] 앱 백그라운드 전환 감지하기 - 코틀린&자바 (0) | 2023.09.19 |
[안드로이드] 코틀린 typealias에 대해 알아보기 (0) | 2023.09.06 |