Closed
Description
Repository method declarations using Kotlin value classes are subject to be mangled (i.e. Kotlin Compiler appends a hash separated by -
).
interface PersonRepository : CrudRepository<Person, String> {
fun findOneByEmail(emailAddress: EmailAddress): Person
}
becomes:
interface PersonRepository extends CrudRepository<Person, String> {
Person findOneByEmail-u1QWhUI(EmailAddress emailAddress);
}
@JvmName
cannot be used on interfaces so the only way to mitigate that issue is on our side.