Отдельная версия Android Gradle Jvm для тестирования приложений и модулей - PullRequest
0 голосов
/ 17 декабря 2018

Можно ли установить jvmTarget = "1.8" только для модульных тестов в Gradle для приложения Android?Я использовал:

tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Но потом я получил сбои на старых устройствах 4.4 ...

1 Ответ

0 голосов
/ 18 декабря 2018

Да, вы можете сделать это, просто установив jvmTarget для определенной задачи компиляции Kotlin.

В проекте Android модульные тесты обычно компилируются задачами compileDebugUnitTestKotlin, compileReleaseUnitTestKotlin и т. Д.Вы можете найти полный список задач Gradle в представлении IDE Gradle или запустив:

./gradlew tasks --all

Поиск имен по шаблону compile*Kotlin.

Затем просто настройте одиночныйзадача, которая вам нужна, например:

tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile)
    .matching { it.name == "compileDebugUnitTestKotlin" }
    .all { 
        kotlinOptions {
            jvmTarget = "1.8"
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...