Sobes.tech
Junior — Middle

Milline on SourceSets'i roll ja eesmärk projekti arendus- ja ehitusprotsessis?

sobes.tech AI

Vastus AI-lt

SourceSets on kontsepts build-süsteemides (näiteks Gradle), mis võimaldab organiseerida projekti lähtekoodi ja ressursid erinevates kogumites.

Android arenduses aitavad SourceSets eraldada koodi ja ressursid erinevate build-variantide jaoks, näiteks debug ja release, või erinevate flavor-ide jaoks.

Iga SourceSet sisaldab:

  • Java/Kotlin lähtekoodifaile,
  • ressursse (Android ressursid, konfiguratsioonifailid jms),
  • manifestifaile.

See võimaldab hõlpsasti hallata erinevaid koodi ja ressursside versioone, neid üle kirjutada konkreetsete build-variantide jaoks ilma kogu projekti dubleerimata.

Näide: projektis on 'main' SourceSet põhikoodiga ja 'debug' lisakoodiga silumiseks. Debug-versiooni koostamisel ühendab Gradle mõlemad kogumid.