문제 설명
kotlin 클래스의 상수 풀에 있는 미친 UTF‑8 항목 (Crazy UTF‑8 entry in a kotlin class' constant pool)
Kotlin 소스에서 .class 파일의 내용을 검사할 때(그냥 "Hello World", 다른 것은 없음) 상수 풀 내에서 (a) 어디에도 사용되지 않고 (b) 다음과 같은 UTF‑8 문자열을 찾았습니다. 이상한 콘텐츠입니다.
이것이 무엇인지 말해 줄 수 있습니까?
참조 솔루션
방법 1:
This is the content of kotlin.Metadata
annotation. It is coded with Protobuf and used by both compiler and Kotlin‑Reflect.
Kotlin uses String
instead of byte[]
because class format is very wasteful at storing arrays.
When you are not using Kotlin‑Reflect, metadata is unused and can be removed by ProGuard.