mediapipe-samples 예제를 프로젝트 내에서 테스트하는 도중에 빌드 시 다음과 같은 오류들이 났다
- Caused by: org.gradle.workers.internal.DefaultWorkerExecutor$WorkExecutionException: A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
- Caused by: java.lang.RuntimeException: Duplicate class com.google.protobuf.AbstractMessageLite found in modules protobuf-java-3.22.3.jar -> jetified-protobuf-java-3.22.3 (com.google.protobuf:protobuf-java:3.22.3) and protobuf-javalite-3.19.1.jar -> jetified-protobuf-javalite-3.19.1 (com.google.protobuf:protobuf-javalite:3.19.1)
- Caused by: org.gradle.workers.internal.DefaultWorkerExecutor$WorkExecutionException: A failure occurred while executing com.android.build.gradle.internal.tasks.MergeJavaResWorkAction
- Caused by: com.android.builder.merge.DuplicateRelativeFileException: 2 files found with path 'google/protobuf/field_mask.proto'.
살펴보니 다음과 같이 implementation 한 내용이 기존 google login 과 firebase 에 겹치는 내용이 있어서 나는 오류인것 같았다
implementation 'com.google.mediapipe:tasks-vision:latest.release'
그래서 app 수준에 다음과 같은 코드를 추가하니 오류 없이 정상적으로 빌드되었다
configurations.all {
exclude group: "com.google.protobuf", module: "protobuf-java"
}