These files contain data for declarations of standard ("built-in") Kotlin classes that are not compiled into .class files, but rather are mapped to existing types on the platform (in this case, JVM). For example, kotlin/kotlin.kotlin_builtins contains information for non-physical classes in the kotlin package: Int , String , Enum , Annotation , Collection , etc.
When using these files, there are two main scenarios:
1) The compiler searches for them from kotlin-runtime in the classpath to determine which inline declarations are available.
2) The reflection library ( kotlin-reflect ) downloads these files as resources to provide the ability to reflect embedded ads. For example, String::class.members returns all members of the kotlin.String class in the same way that the Kotlin compiler sees these members (despite the fact that there is no kotlin/String.class , and it was deleted before java.lang.String in bytecode)).
The first paragraph is clearly not applicable in your case. And if you do not use reflection of built-in classes, I think that it is possible to completely exclude .kotlin_builtins files from the resulting banner.
source share