import Ġde . f ay ard . refresh Versions . core . version For Ċ import Ġjava . util . Properties Ċ import Ġorg . jetbrains . kotlin . gradle . tasks . Abstract Kotlin Compile Ċ import Ġorg . jetbrains . kotlin . gradle . tasks . Kotlin Test Ċ Ċ plugins Ġ{ ĊĠ Ġid (" com . diff plug . spot less ") ĊĠ Ġidea Ċ } Ċ Ċ rootDir . resolve (" local . properties "). take If ( File :: exists )?. let Ġ{ ĊĠ ĠProperties (). apply Ġ{ ĊĠĠĠ Ġit . inputStream (). use (:: load ) ĊĠ Ġ}. map Keys Ġ{ Ġ( k , Ġ_) Ġ-> Ġk . toString () Ġ} Ċ } ?. toList ()?. forEach Ġ{ Ġ( k , Ġv ) Ġ-> ĊĠ Ġproject . extra [ k ] Ġ= Ġv Ċ } Ċ Ċ repositories Ġ{ ĊĠ Ġmaven Central () ĊĠ Ġmaven (" https :// maven . pkg . jetbrains . space / public / p / compose / dev ") ĊĠ Ġgoogle () Ċ } Ċ Ċ idea Ġ{ ĊĠ Ġmodule Ġ{ ĊĠĠĠ Ġis Download Sources Ġ= Ġtrue ĊĠĠĠ Ġis Download Javadoc Ġ= Ġtrue ĊĠ Ġ} Ċ } Ċ Ċ spot less Ġ{ ĊĠ Ġval Ġk tl int Settings Ġ= Ġmap Of ( ĊĠĠĠ Ġ" indent _ size " Ġto Ġ" 2 ", ĊĠĠĠ Ġ" continu ation _ indent _ size " Ġto Ġ" 4 ", ĊĠĠĠ Ġ" disabled _ rules " Ġto Ġ" no - wildcard - imports " ĊĠ Ġ) ĊĠ Ġkotlin Ġ{ ĊĠĠĠ Ġtarget (" src /**/*. kt ") ĊĠĠĠ Ġk tl int ( version For (" version . kt lint ")). userData ( kt lint Settings ) ĊĠ Ġ} ĊĠ Ġkotlin Gradle Ġ{ ĊĠĠĠ Ġtarget (" *. k ts ") ĊĠĠĠ Ġk tl int ( version For (" version . kt lint ")). userData ( kt lint Settings ) ĊĠ Ġ} Ċ } Ċ Ċ tasks Ġ{ ĊĠ Ġwith Type < Test > Ġ{ Ġuse JUnit Platform () Ġ} ĊĊĠ Ġafter Evaluate Ġ{ ĊĠĠĠ Ġif Ġ( tasks . find ByName (" compile ") Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġregister (" compile ") Ġ{ ĊĠĠĠĠĠĠĠ Ġdepends On ( with Type ( Abstract Kotlin Compile :: class )) ĊĠĠĠĠĠĠĠ Ġgroup Ġ= Ġ" build " ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ( tasks . find ByName (" all Tests ") Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġregister (" all Tests ") Ġ{ ĊĠĠĠĠĠĠĠ Ġdepends On ( with Type ( Kotlin Test :: class )) ĊĠĠĠĠĠĠĠ Ġgroup Ġ= Ġ" verification " ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ