Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa · Oppitunti

Moniprojektibuildit ja settings-tiedosto

Järjestä suurempia koodikantoja Gradlen moniprojektibuildeilla, settings.gradle-tiedostolla ja aliprojektien yhteisellä kokoonpanolla.

Oppitunti 4/413 vaihetta

Moniprojektibuildit ja settings-tiedosto on ilmainen Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-kurssilla on yhteensä 4 oppituntia.

Miksi moniprojektikoontiversioita käytetään?

Oikeat sovellukset jaetaan usein moduuleihin — esimerkiksi rajapintaan, ydin­kirjastoon ja komentorivikäyttöliittymään. Gradlen moniprojektikoontiversiot mahdollistavat useiden aliprojektien koordinoinnin yhdessä koonnissa sekä asetusten ja riippuvuuksien jakamisen.

settings.gradle-tiedosto

Juurihakemiston settings.gradle määrittää koonnin: sen nimen ja siihen kuuluvat aliprojektit. Ilman include-määritystä Gradle ohittaa hakemiston.

rootProject.name = 'my-app'
include 'core', 'api', 'cli'

Hakemistorakenne

Jokainen mukaan otettu projekti sijaitsee omassa kansiossaan, jossa on oma build.gradle-tiedosto. Juurikoonti voi määrittää niiden kaikkien asetukset yhdestä paikasta.

Juurihakemiston build.gradle

Käyttäkää juurikoontiversiossa allprojects- ja subprojects-lohkoja yhteisten asetusten käyttöönottoon ja toiston välttämiseen.

subprojects {
    apply plugin: 'java'
    repositories { mavenCentral() }
}

Projektien väliset riippuvuudet

Aliprojekti voi riippua toisesta käyttämällä project()-merkintää, jolloin Gradle kokoaa ne oikeassa järjestyksessä.

dependencies {
    implementation project(':core')
}

Koontijärjestys

Gradle muodostaa projektien riippuvuuksista suunnatun graafin ja kääntää kunkin moduulin ennen sitä tarvitsevia moduuleja. Järjestystä ei tarvitse määrittää käsin.

Tehtävien suorittaminen eri projekteissa

Juurihakemistosta suoritettu gradle build kokoaa kaikki aliprojektit. Kohdistakaa komento yhteen projektiin projektipolun etuliitteellä.

gradle :api:test

Tarpeenmukainen määritys

Suurissa koonneissa tarpeenmukaisen määrityksen käyttöönotto käskee Gradlea määrittämään vain pyydetyn tehtävän kannalta olennaiset projektit, mikä nopeuttaa käynnistystä.

org.gradle.configureondemand=true

Jakaminen buildSrc-hakemistolla

Erityinen buildSrc-hakemisto sisältää jaetun koontilogiikan (mukautetut tehtävät ja liitännäiset), joka käännetään kerran ja on automaattisesti kaikkien aliprojektien käytettävissä.

Yhdistelmäkoonnit

Erillisissä repositorioissa yhdistelmäkoonti ja includeBuild mahdollistavat erillisten Gradle-koontien yhdistämisen ilman artefaktien julkaisemista.

includeBuild '../shared-lib'

Rinnakkainen suoritus

Riippumattomat aliprojektit voidaan koota samanaikaisesti. Ottakaa rinnakkainen suoritus käyttöön, jotta kaikki suorittimen ytimet hyödynnetään ja suurten moniprojektikokoonpanojen koontiaika lyhenee.

org.gradle.parallel=true

Pikatarkistus

Testatkaa tietonne moniprojektikoonneista.

Kertaus

Opitte jäsentämään suurempia koonteja:

  • Moniprojektikoonnit koordinoivat useita moduuleja
  • settings.gradle ottaa aliprojektit mukaan
  • subprojects/allprojects jakavat määritykset juurihakemistosta
  • project(:name) määrittää moduulien väliset riippuvuudet
  • buildSrc ja yhdistelmäkoot edistävät uudelleenkäyttöä
Aloita maksutta

Opi Groovy tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
12
Oppitunnit
48

Usein kysytyt kysymykset

Onko oppitunti ”Moniprojektibuildit ja settings-tiedosto” ilmainen?

Kyllä – oppitunnin ”Moniprojektibuildit ja settings-tiedosto” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-kurssin, päivitä CoddyKit PROhon. Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Moniprojektibuildit ja settings-tiedosto”?

Järjestä suurempia koodikantoja Gradlen moniprojektibuildeilla, settings.gradle-tiedostolla ja aliprojektien yhteisellä kokoonpanolla. Harjoittelet Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.

Kuinka kauan ”Moniprojektibuildit ja settings-tiedosto”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-oppitunnilla?

Kyllä. Jokainen Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Gradlen asennus ja komentorivi
  2. Gradle-projektin rakenne
  3. Tehtävät ja koonnin elinkaari
  4. Moniprojektibuildit ja settings-tiedosto
← Takaisin: Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa