метод kapt Kotlin не найден в build.gradle - PullRequest
1 голос
/ 21 января 2020

Я пытаюсь запустить задачу, которая копирует файл после завершения kapt Kotlin. Я использую Spring в сочетании с Kotlin и хочу скопировать сгенерированный файл spring-configuration-metadata. json в папку META-INF. Если бы этого можно было достичь без использования собственной задачи копирования, это бы мне тоже очень помогло.

plugins {
    id 'org.jetbrains.kotlin.jvm' version '1.3.61'
    id "org.jetbrains.kotlin.kapt" version "1.3.61"
}

kaptKotlin {
    finalizedBy copyPropertiesMetadata
}

task copyPropertiesMetadata(type: Copy) {
    from file("$buildDir/tmp/kapt3/classes/main/META-INF/spring-configuration-metadata.json")
    into file("src/main/resources/META-INF")
}

Когда я пытаюсь сделать это, как в примере, я получаю следующее сообщение об ошибке:

Возникла проблема при оценке root проекта 'kapt-test'. Не удалось найти метод kapt Kotlin () для аргументов [build_7sekpnn17qad87i9lpu664i61$_run_closure1@66bc8629] в root проекте 'kapt-test' типа org.gradle.api.Project.

Кто-нибудь знает, как сделать это?

1 Ответ

0 голосов
/ 21 января 2020

Хорошо, я нашел способ сделать это, благодаря этому сайту . Я должен сделать это наоборот:

task copyPropertiesMetadata(type: Copy, dependsOn: 'kaptKotlin') {
    from file("$buildDir/tmp/kapt3/classes/main/META-INF/spring-configuration-metadata.json")
    into file("src/main/resources/META-INF")
}

Когда в качестве строки указано «kapt Kotlin», это работает правильно

...