Size: a a a

2018 October 18

AE

Alexandr Emelyanov in Kotlin JVM
Boris Vanin
Я в последний раз использовал ант примерно 15 лет назад
я на джаве 6-7 лет)
источник

BV

Boris Vanin in Kotlin JVM
Victor Alenkov
дело не в том, кто и как использует. А в том, что часть плагинов, по факту, так не умеют применяться. Пока нарыл два - kotlin-dsl и build-scan. Остальным всё равно как их объявили и вызвали
Вот сейчас совсем не понял. Покажи лучше кейз, который ты пытаешься реализовать, возможно есть другое способы сделать тоже самое
источник

BV

Boris Vanin in Kotlin JVM
И да, есть очень большая разница в том как применять
источник

VA

Victor Alenkov in Kotlin JVM
https://github.com/itbasis/kotlin-utils/blob/master/build.gradle.kts#L36
вот например. Попытка перенести вызов плагина в строку https://github.com/itbasis/kotlin-utils/blob/master/build.gradle.kts#L40 даст ошибку
источник

BV

Boris Vanin in Kotlin JVM
Для билдов на котлине есть только одно правило. Всегда декларируй плагины в блоке плагинов. Остальное можно делать как угодно
источник

VA

Victor Alenkov in Kotlin JVM
где про это написано?
источник

BV

Boris Vanin in Kotlin JVM
В доке
источник

BV

Boris Vanin in Kotlin JVM
И самое главное, что плагины задекларированные в блоке плагинов поддерживаются идеей!
источник

BV

Boris Vanin in Kotlin JVM
Те для них генерируются блоки их экстеншенов и томуподобное
источник

VA

Victor Alenkov in Kotlin JVM
в IDEA поддерживаются плагины и так и сяк. Если бы это было не так - давно бы заявил багу...
источник

BV

Boris Vanin in Kotlin JVM
Нет. Это не проблема идеи
источник

BV

Boris Vanin in Kotlin JVM
Просто плагины из этого блока объявлены декларативно и могут быть предобрабоианы
источник

BV

Boris Vanin in Kotlin JVM
В отличии от архаичного декларирования в момент применения
источник

BV

Boris Vanin in Kotlin JVM
Поэтому если хочется использовать все преимущества билда на котлине в идее, всегда декларируй плагины до их использования
источник

BV

Boris Vanin in Kotlin JVM
Тоже самое написано и в доке
источник

VA

Victor Alenkov in Kotlin JVM
плагин может применять другие плагины и это не секция plugins уже. посмотрите на те же плагины от Kotlin
источник

BV

Boris Vanin in Kotlin JVM
Это не вопрос применения, а вопрос их декларирования
источник

BV

Boris Vanin in Kotlin JVM
Применять их можно точно так же как и раньше
источник

VA

Victor Alenkov in Kotlin JVM
декларировать я могу и в buildscript>dependencies секции
источник

BV

Boris Vanin in Kotlin JVM
Просто надо ещё декларировать. При декларировании они автоматом применяются, но это можно отключить, передав параметр апплай фолз
источник