As it described in the Kotlin reference
To make Kotlin APIs work in Java we generate Box<Super>
as
Box<? extends Super>
for covariantly defined Box
(or Foo<? super Bar>
for
contravariantly defined Foo) when it appears as a parameter.
You can use @JvmSuppressWildcards
for avoiding it, just as following:
@Inject lateinit var foo: Set<@JvmSuppressWildcards Foo>
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…