안드로이드 Proto 설정 시 오류개발/Android2023. 8. 14. 17:44
Table of Contents
오랜만에 Proto Datastore를 사용하려고 하니 2가지 오류가 발생하였습니다. Plugin 적용하는 부분에서 아래의 오류가 발생하였습니다.
Could not get unknown property 'source' for generate-proto-generateDebugProto of type org.gradle.api.internal.file.DefaultSourceDirectorySet.
실수가 있나하여 공식 문서, Codelab을 참고하여 시도하였지만 변화가 없었습니다.
여기저기 찾아보니 스택오버플로우에서 관련 내용을 찾을 수 있었습니다.
해결 방법은 간단합니다. 코드랩에 안내된 0.8.17
버전 대신 0.9.1
을 사용하면 됩니다...
id("com.google.protobuf") version "0.9.1" // Codelab에 표기된 0.8.7 대신 0.9.1으로 변경
만약 저처럼 Codelab을 따라하신 분이라면 위의 오류를 해결 후 Proto 컴파일(rebuild) 시 artifact를 찾을 수 없다는 오류를 만나보실 수 있을겁니다.
Execution failed for task ':app:generateDebugProto'.
> Could not resolve all files for configuration ':app:protobufToolsLocator_protoc'.
> Could not find com.google.protobuf:protoc:21.7.
Searched in the following locations:
- https://dl.google.com/dl/android/maven2/com/google/protobuf/protoc/21.7/protoc-21.7.pom
- https://repo.maven.apache.org/maven2/com/google/protobuf/protoc/21.7/protoc-21.7.pom
Required by:
project :app
Codelab에서는 21.7
을 사용하고 있어 그대로 적용하였는데 또 안되더라구요... 마찬가지로 여기저기 찾아보니 다른 버전을 사용하라고 합니다. 버전을 바꿔줍시다...
protobuf {
protoc {
artifact = "com.google.protobuf:protoc:3.19.4" // Codelab에서는 21.7으로 표기됨...
}
generateProtoTasks {
all().forEach { task ->
task.builtins {
id("java") {
option("lite")
}
}
}
}
}
이후 다시 sync후 rebuild 하면 정상적으로 클래스가 생성됩니다.
무언가 허무하군요...
'개발 > Android' 카테고리의 다른 글
안드로이드 뒤로가기 두번 눌러 종료 기능 Flow로 구현하기 (0) | 2023.11.28 |
---|---|
컴포즈 내비게이션 CreationExtras must have a value by `SAVED_STATE_REGISTRY_OWNER_KEY` 오류 (0) | 2022.12.07 |
[Room DB] Room Database 마이그레이션 시 주의점 2가지 (0) | 2022.12.05 |
PopupWindow에서 Jetpack Compose를 사용하는 방법 (1) | 2022.11.04 |
안드로이드 gRPC 개념 및 사용법 (2) | 2022.10.12 |
@귀염둥이 팡무 :: HolyKisa
상상하는 것을 소프트웨어로 구현하는 것을 좋아하는 청년
게시글이 마음에 드시나요? [ 공감❤️ ] 눌러주시면 큰 힘이 됩니다!