Java Nonnull annotation for list items

Is there a possibility to mark list in Java as containing not null values.
An example, I can mark getter, as returning not-nulls:

@NullableByDefault
static class Abra {
    @Nonnull
    public List<String> getList() {
        return Arrays.asList("A", "B", "C");
    }
}

but then

val list = Abra().list
val a = list.first()

list itself is non-null, but a is nullable in kotlin.

I know, that generics are erased in java byte code,
but maybe some tricks exists, like special annotation on list.

My use case:
I add Nonnull annotation on fields while generating Java classes from xsd (jaxb plugin) when those elements are required by xsd.
Later on I use those classes from kotlin.

import org.jetbrains.annotations.NotNull; // implementation 'org.jetbrains:annotations:22.0.0'

import java.util.Arrays;
import java.util.List;

class Abra {
    public List<@NotNull String> getList() {
        return Arrays.asList("A", "B", "C");
    }
}

Annotations are only checked during compile time and they doesn’t guarantee that Java collection doesn’t include null values during runtime.

Java since version 9 have Immutable Collections, which of cause are immutable, but also doesn’t allow null values, so those collections guarantee that it will never include any null value. Guava also have immutable collections which also doesn’t allow null values.