Simple&Natural

META-INF 관련 문제가 발생하는 경우 본문

안드로이드(Android)/이슈 및 해결

META-INF 관련 문제가 발생하는 경우

Essense 2020. 9. 15. 20:52
728x90

진행하는 프로젝트의 Gradle을 리팩토링 하던 중 빌드가 되지 않는 현상이 발생하였다.

 

안드로이드 스튜디오 버전

4.0

 

오류 내용

Execution failed for task ':app:mergeDebugJavaResource'. > A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade > More than one file was found with OS independent path 'META-INF/AL2.0'.

 

 

해결방법

 

구글링 도중 발견한 문제 해결의 키워드이다.


여러 모듈 앱 환경에서 작동하는 비슷한 문제에 직면했습니다.

오류 : ': app : transformResourcesWithMergeJavaResForDebug'태스크에 대한 실행이 실패했습니다. OS 독립 경로 'META-INF / AL2.0'에 둘 이상의 파일이 있습니다.

이 문제는 이러한 여러 모듈에서보고되었으며 위의 해결 방법으로는 해결되지 않았습니다. 내가 사용하고있는 다른 라이브러리에 이미 포함되어있는 META-INF / AL2.0을 포함하는 것처럼 보이는 Coroutines 1.3.6 버전을 사용하고있었습니다. 이 문제를 해결하기 위해 실패한 모듈의 build.gradle에 다음 코드 스 니펫을 추가했습니다.

configurations.all { resolutionStrategy { exclude group: "org.jetbrains.kotlinx", module: "kotlinx-coroutines-debug" } }

여러 모듈에서 발생 resolutionStrategy했으므로 해당 코드를 프로젝트 레벨 build.gradle로 옮겼습니다. 그 후 모든 것이 효과가있었습니다.


 

 

일단 내 경우에도 코루틴 관련 라이브러리의 버전을 수정하고 나서 발생한 문제였는데

역추적을 해보니 org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutine_version 의 버전을

1.3.0 -> 1.3.7 로 적용한 이후 문제가 발생한 것 같았다.

 

위에 인용한 부분의 코드를 빌드에 추가하는 방법으로도 해결이 가능하나 나는 롤백으로 해결.

라이브러리 버전이 업데이트 되면서 기존 프로젝트의 파일과 충돌하는 부분이 생긴 것으로 보인다.

 

 

 

참고자료

qastack.kr/programming/44342455/more-than-one-file-was-found-with-os-independent-path-meta-inf-license

 

OS 독립 경로 'META-INF / LICENSE'와 함께 둘 이상의 파일이 발견되었습니다.

 

qastack.kr

 

728x90