На днях узнал о полезной настройке в Gradle, которая пригодится проектам с большим количеством модулей. Даже если она не решит критических проблем, то как минимум сделает код чище и эстетичнее.
Предположим, у нас есть модули
core-ui и core-common. Обычно при их добавлении в другой модуль используется такой синтаксис:
implementation(project(":core:common"))
implementation(project(":core:ui"))
В целом, ок, но можно сделать аналогично тому, как мы работаем с зависимостями из toml-каталога:
implementation(projects.core.common)
implementation(projects.core.ui)
Для этого достаточно зайти в корневой
settings.gradle и добавить там строку enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS»)Хотя фича и считается «экспериментальной», вроде работает вполне себе стабильно. Надеюсь, было полезно.