Size: a a a

2019 October 17

RI

Ruslan Ibragimov in Kotlin JVM
Ну без типов конечно
источник

AN

Alexander Nozik in Kotlin JVM
Ruslan Ibragimov
Это все в settings можно делать
У плагина вообще нет такой штуки как конфигурация. А если я хочу плагин по разному настроить в разных модулях?
источник

AN

Alexander Nozik in Kotlin JVM
Глубинная проблема в том, что плагины считаются синглетонами и не должны содержать состояния. но де-факто, в сложной сборке конфигурация плагинов нужна.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Extensionом без танцев с бубнами не возможнос настроить например какие таски генерируются и какие библиотеки подключатся.
Ну это да, там только набор настроек, который надо ещё вытащить и сделать что-то на его основе
источник

AN

Alexander Nozik in Kotlin JVM
Да, и еще зависимость плагинов друг от друга.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Глубинная проблема в том, что плагины считаются синглетонами и не должны содержать состояния. но де-факто, в сложной сборке конфигурация плагинов нужна.
Состояние всегда можно запихать в Project, тем не менее
источник

AN

Alexander Nozik in Kotlin JVM
Короче, градл тоже себя перерос. Мы сейчас хотим следующий метасистемный переход. Нужно иметь возможность не просто конфигурировать таски, а делать возможность добавлять или удалять таски в зависимости от условий и настроек.
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Состояние всегда можно запихать в Project, тем не менее
Ну и разве это хорошо?
источник

BV

Boris Vanin in Kotlin JVM
Alexander Nozik
Глубинная проблема в том, что плагины считаются синглетонами и не должны содержать состояния. но де-факто, в сложной сборке конфигурация плагинов нужна.
Это неправда
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Ну и разве это хорошо?
А где ему ещё быть?
А по поводу экстеншенов: через них нельзя адекватно создавать и удалять таски так, чтобы они использовались в билдскрипте, потому что эти самые экстеншены настраиваются там же.
источник

AN

Alexander Nozik in Kotlin JVM
источник

BV

Boris Vanin in Kotlin JVM
Всё там нормально с конфигурацией плагинов
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
А где ему ещё быть?
А по поводу экстеншенов: через них нельзя адекватно создавать и удалять таски так, чтобы они использовались в билдскрипте, потому что эти самые экстеншены настраиваются там же.
Можно, но если экстеншен видит проект
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Да, и еще зависимость плагинов друг от друга.
А с этим что не так?
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
А с этим что не так?
В том, что она есть, но градл из коробки про это не знает.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Можно, но если экстеншен видит проект
Ну это, как вы написали, плохо
источник

BV

Boris Vanin in Kotlin JVM
Плагин получает конфиг из проекта
источник

AN

Alexander Nozik in Kotlin JVM
Короче, ппроблема в том, что плагины - синглетоны без стейта, но на самом деле есть потребность в настраиваемых объектах, которые имеют граф зависимости друг от друга.
источник

AN

Alexander Nozik in Kotlin JVM
Boris Vanin
Плагин получает конфиг из проекта
Ага, а теперь вспоминаем, что плагин подключается ДО того, как проект получает конфиг
источник

VP

Vladimir Petrakovich in Kotlin JVM
Вот это легко решается отдельными плагинами
источник