Apakah mungkin untuk mengakses fungsi ekstensi dari kode Java?
Saya mendefinisikan fungsi ekstensi dalam file Kotlin.
package com.test.extensions
import com.test.model.MyModel
/**
*
*/
public fun MyModel.bar(): Int {
return this.name.length()
}
Di mana MyModel
kelas java (dihasilkan). Sekarang, saya ingin mengaksesnya dalam kode java normal saya:
MyModel model = new MyModel();
model.bar();
Namun, itu tidak berhasil. IDE tidak akan mengenali bar()
metode dan kompilasi gagal.
Apa yang berhasil digunakan dengan fungsi statis dari kotlin:
public fun bar(): Int {
return 2*2
}
dengan menggunakan import com.test.extensions.ExtensionsPackage
IDE saya sepertinya sudah terkonfigurasi dengan benar.
Saya mencari melalui seluruh file Java-interop dari dokumen kotlin dan juga banyak googled, tetapi saya tidak dapat menemukannya.
Apa yang saya lakukan salah? Apakah ini mungkin?
com.test.extensions.ExtensionsPackage
import package com.test.extensions.MyModel
?