Member Reference Operators not working properly with libraries written in java

I am wondering why the member reference operator ( :: ) can’t be used in below code.
The sample code looks like below

 val listOfElements = listOf(1, 2, 3)
 Mono.just(listOfElements).flatMapMany{Flux.fromIterable(it)} //this works
 Mono.just(listOfElements).flatMapMany(Flux::fromIterable) // this does not work

Sample library code in java is here
    public final <R> Flux<R> flatMapMany(Function<? super T, ? extends Publisher<? extends R>> mapper) {
    return Flux.onAssembly(new MonoFlatMapMany<>(this, mapper));

    public static <T> Flux<T> fromIterable(Iterable<? extends T> it) {
    return onAssembly(new FluxIterable<>(it));

I was following this question and then i tried to implement the same in kotlin, but unfortunately kotlin does not support member reference operator(::slight_smile: for this function

So, in general, reference to java methods and properties work just fine. Your example in testing is complaining about not being able to infer the return type. The issue actually seems to be that the function you’re trying to get a reference to is from a genericized class (Flux).
EDIT: This also doesn’t work if the functions are kotlin functions. The compiler just struggles with the many generic types from the Iterable and the Flux.
EDIT2: Kotlin code to illustrate point made in EDIT:

class Test<T> private constructor(var ts: Iterable<T>) {
    companion object {
        fun <T> fromIterable(iterable: Iterable<T>): Test<T> {
            return Test(iterable)

fun main() {
    val ints = listOf("1", "2", "3")
    val tests = ints.let(Test::fromIterable) //type inference failure here