@MechanicZelenyy

Как создать task для запуска приложения с помощью Gradle Kotlin DSL?

Добрый день.

Решил попробовать Gradle Kotlin DLS.

У меня есть программа с несколькими точками входа и для их запуска я делал отдельные task вида:
task runMain(type: JavaExec) {
    classpath = sourceSets.main.runtimeClasspath
    main = "ru.mipt.npm.mcengine.MainKt"
    standardInput = System.in
}

Теперь я пытаюсь сделать вот так:
tasks.create<JavaExec>("runMain"){
    classpath = java.sourceSets["main"].runtimeClasspath
    main = "ru.mipt.npm.mcengine.MainKt"
    standardInput = System.`in`
}

Однако с classpath какая-то проблема, он не работает с ошибкой:
Script compilation error:

  Line 38:     classpath = java.sourceSets["main"].runtimeClasspath
                                ^ Unresolved reference. None of the following candidates is applicable because of receiver type mismatch: 
                                    public val Project.sourceSets: SourceSetContainer defined in org.gradle.kotlin.dsl


Что делать? Изучение документации к ответу меня не привело.

P. S. Про плагин apllication я знаю, мне он не подходит.
  • Вопрос задан
  • 247 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы