The error you're getting is about following expression:
List::class.java
Because of how jvm treats generics there's no separate class for List thus compiler complains. Similarly in Java the following will not compile:
List.getClass()
Here's a sample that will deserialize the list properly:
val value:List = mapper.readValue(json, object : TypeReference>() {})
As @JaysonMinard has pointed out you can use jackson-module-kotlin to simplify the invocation to:
val genres: List = mapper.readValue(json)
// or
val genres = mapper.readValue>(json)
This is possible because of reified type parameters. Consider looking at Extensions to find out details.