Не удается разрешить символы @ReadOnly и @Mutable в компиляции Kotlin 1.1.0

При компиляции с Kotlin 1.1.0 я получил ошибки "Не удается разрешить символ ReadOnly" и "Не удается разрешить изменяемый символ". Разве @ReadOnly и @Mutable недоступны в Kotlin 1.1.0? Ниже приведен пример кода.

SampleList.java Kotlin 1.0.7

import org.jetbrains.annotations.Mutable;
import org.jetbrains.annotations.ReadOnly;

import java.util.ArrayList;
import java.util.List;

public class SampleList {
    @ReadOnly // Can resolve symbol 'ReadOnly'
    public static List<Integer> getReadOnlyList() {
        return new ArrayList<>();
    }

    @Mutable // Can resolve symbol 'Mutable'
    public static List<Integer> getMutableList() {
        return new ArrayList<>();
    }
}

SampleList.java Kotlin 1.1.0

import org.jetbrains.annotations.Mutable;
import org.jetbrains.annotations.ReadOnly;

import java.util.ArrayList;
import java.util.List;

public class SampleList {
    @ReadOnly // Cannot resolve symbol 'ReadOnly'
    public static List<Integer> getReadOnlyList() {
        return new ArrayList<>();
    }

    @Mutable // Cannot resolve symbol 'Mutable'
    public static List<Integer> getMutableList() {
        return new ArrayList<>();
    }
}

Заранее спасибо.

1 ответ

Решение

Мне жаль. Добавление kotlin-компилятора включено @Mutable и @ReadOnly. Настройки build.gradle следующие.

// build.gradle
dependencies {
    compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
    compile "org.jetbrains.kotlin:kotlin-compiler:$kotlin_version" // Added
    ...
}
Другие вопросы по тегам