Hi folks :slightly_smiling_face: Hot sure if this ...
# announcements
a
Hi folks 🙂 Hot sure if this is the right thread. Looks like we have an issue with java interoperability in case of using
inline
classes in kotlin:
java interface
Copy code
public interface ItemClickListener { //java interface
    void onClick(CollectionData collectionData);
}
kotlin data class
Copy code
inline class CollectionData(val collectionName: String)
call from kotlin code
Copy code
private fun setListener() {
    listener = ItemClickListener { }
}
Error in runtime:
Copy code
java.lang.NoSuchMethodError: No interface method onClick-GwgtRiE(Ljava/lang/String;)V in class LItemClickListener; or its super classes (declaration of 'ItemClickListener' appears in /data/app/packagename-Uswa6bR60ndbc7IFGkEVCw==/base.apk!classes2.dex)
d
Yes, Java does not understand inline classes, so inline classes or code that uses them cannot be used from Java in a sane way.
a
@diesieben07
inline classes
are still experimental - maybe we are able to add some ide/lint warning on java side?
@jw fyi ^