Laajennusten käyttöönotto ja julkaiseminen
Opiskelkaa käyttämään mukautettuja laajennuksia projekteissa ja julkaisemaan niitä paikalliseen tai etärepositorioon.
Laajennusten käyttöönotto ja julkaiseminen on ilmainen Groovy ja Gradle: JVM-automaatiota ja koontien hallintaa-oppitunti CoddyKitissä. Tämä on oppitunti 3/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.
Gradle-laajennusten uudelleenkäyttäminen
Olette siis oppineet luomaan mukautettuja Gradle-laajennuksia. Hienoa! Mutta miten niitä käytetään eri projekteissa, ja miten niitä voi jakaa muiden kanssa?
Tässä oppitunnissa tarkastellaan mukautettujen laajennusten käyttöönottoa Gradle-projektissa sekä niiden julkaisemista paikalliseen tai etäiseen repositorioon laajempaa käyttöä varten.
Laajennusten käyttöönoton kertaus
Ennen mukautettaviin laajennuksiin perehtymistä palautetaan nopeasti mieleen, miten vakiolaajennukset otetaan käyttöön.
- Useimmat laajennukset otetaan käyttöön
plugins { id 'plugin-id' }-lohkollabuild.gradle-tiedostossa. - Tätä tapaa suositaan sen deklaratiivisuuden ja paremman työkalutuen vuoksi.
- Se toimii Gradlen Plugin Portal -portaalin laajennusten, paikallisten
buildSrc-laajennusten ja julkaistujen laajennusten kanssa.
Skriptien laajennusten käyttöönotto
Voitte määrittää koontilogiikan suoraan build.gradle-tiedostossa tai sisällyttää sen toisesta skriptistä. Tämä on yksinkertaisin tapa käyttää logiikkaa uudelleen.
Alla määritetään mukautettu tehtävä myCustomTask. Se on koontiskriptin käytettävissä muiden tehtävien tavoin.
task myCustomTask {
doLast {
println "Hello from my custom task!"
}
}
task executeMyTask {
dependsOn myCustomTask
doLast {
println "Main build script finished after custom task."
}
}
// To run: gradle executeMyTaskLaajennukset hakemistosta buildSrc
Monimutkaisempia, projektikohtaisia laajennuksia varten Gradle kääntää automaattisesti kaikki hakemistossa buildSrc määritetyt laajennukset ja asettaa ne käytettäviksi.
Jos luotte laajennuksen tiedostoon buildSrc/src/main/groovy/com/example/MyPlugin.groovy, voitte ottaa sen käyttöön suoraan sen tunnuksella:
- Määritä laajennus:
buildSrc/src/main/groovy/my.project.plugin.gradle - Ota laajennus käyttöön:
plugins { id 'my.project.plugin' }
Gradle varmistaa, että buildSrc rakennetaan ennen pääprojektia, joten sen laajennukset ovat valmiita käytettäviksi.
Miksi laajennuksia julkaistaan?
buildSrc sopii erinomaisesti yhden projektin tai monorepon laajennuksiin, mutta mitä jos haluatte jakaa laajennuksen täysin erillisten projektien kesken tai jopa yhteisölle?
Tässä kohtaa julkaiseminen tulee mukaan. Julkaiseminen asettaa laajennuksen saataville repositorioon muiden käyttämienne kirjastojen tapaan (esimerkiksi Maven Centralista).
- Paikallinen: jakaminen omalla koneella henkilökohtaista käyttöä varten.
- Etäinen: jakaminen organisaation sisällä (Artifactory, Nexus) tai maailmanlaajuisesti (Gradle Plugin Portal, Maven Central).
Julkaiseminen maven-publish-laajennuksella
Gradlen maven-publish-laajennus on vakiotapa julkaista laajennuksen artefaktit Maven-yhteensopiviin repositorioihin.
Kun otatte tämän laajennuksen käyttöön, saatte publishing-lohkon käytettäväksi build.gradle-tiedostossa. Lohkossa määritätte, mitä julkaistaan ja miten.
Se lisää myös tehtäviä, kuten publishToMavenLocal ja publish.
plugins {
id 'java-library' // Or 'groovy' for Groovy plugins
id 'maven-publish'
}
group = 'com.coddykit.example'
version = '1.0.0'
// Applying maven-publish plugin
// This is part of setting up for publication.
// No direct output from this snippet alone.Julkaisutietojen määrittäminen
publishing-lohkossa määritätte artefaktinne tiedot: sen nimen, mukaan otettavat komponentit (kuten JAR-tiedostot) sekä kohteen, johon se sijoitetaan.
Julkaisu määrittää artefaktijoukon ja niiden metatiedot (ryhmä, artefaktitunnus, versio).
plugins {
id 'java-library'
id 'maven-publish'
}
group = 'com.coddykit.example'
version = '1.0.0'
publishing {
publications {
maven(MavenPublication) {
// The artifact ID is usually derived from project name,
// but can be explicitly set.
artifactId 'my-groovy-plugin'
from components.java // Publish the Java library component
}
}
}
// This defines how the plugin will be published.
// No direct output from this snippet alone.Julkaiseminen Maven Local -repositoriohon
Kun julkaisu on määritetty, voitte julkaista laajennuksen paikalliseen Maven-repositorioon. Tämä sopii erinomaisesti paikalliseen testaukseen ja kehitykseen.
Gradle tarjoaa jokaiselle määrittämällenne julkaisulle tehtävän (esimerkiksi publishMavenPublicationToMavenLocal, jos julkaisun nimi on maven).
plugins {
id 'java-library'
id 'maven-publish'
}
group = 'com.coddykit.example'
version = '1.0.0'
publishing {
publications {
maven(MavenPublication) { // 'maven' is the publication name
artifactId 'my-groovy-plugin'
from components.java
}
}
repositories {
mavenLocal() // Explicitly declare mavenLocal for publishing
}
}
// To publish: gradle publishMavenPublicationToMavenLocal
// This command will build your plugin and place its artifacts
// into your local Maven cache (~/.m2/repository).Julkaistun laajennuksen käyttöönotto
Jotta voitte käyttää mavenLocal()-repositoriohon julkaisemaasi laajennusta toisessa projektissa, tarvitsette kaksi asiaa:
- Ilmoittakaa
mavenLocal(): lisätkäämavenLocal()laajennusta käyttävän projektinsettings.gradle-tiedostonpluginManagement.repositories-lohkoon. - Ottakaa käyttöön tunnuksella ja versiolla: käyttäkää
plugins { id '...' version '...' }-lohkoa laajennusta käyttävän projektinbuild.gradle-tiedostossa.
Tämä kertoo Gradlelle, että laajennusta etsitään paikallisesta Maven-repositoriosta.
// settings.gradle (consuming project)
pluginManagement {
repositories {
mavenLocal()
gradlePluginPortal()
}
}
// build.gradle (consuming project)
plugins {
id 'com.coddykit.example.my-groovy-plugin' version '1.0.0'
// Replace 'com.coddykit.example.my-groovy-plugin' with your plugin's actual ID
}
// This code snippet shows how to apply a published plugin.
// It assumes the plugin has been published and is available locally.Julkaiseminen etärepositorioon
Jos haluatte jakaa laajennuksen paikallisen koneenne ulkopuolelle, julkaiskaa se etärepositorioon. Tämä voi olla esimerkiksi:
- Yrityksen Artifactory/Nexus: sisäiseen tiimikäyttöön.
- Gradle Plugin Portal: julkisille laajennuksille; käyttö edellyttää
com.gradle.plugin-publish-laajennusta. - Maven Central: suurin julkinen repositorio.
publishing.repositories-lohkon määrityksessä ilmoitetaan näiden etäkohteiden URL-osoite ja tunnistetiedot.
plugins {
id 'maven-publish'
// id 'com.gradle.plugin-publish' // For Gradle Plugin Portal
}
publishing {
publications {
maven(MavenPublication) { /* ... */ }
}
repositories {
maven {
name = "myCompanyRepo"
url = uri("https://your.company.repo/releases")
credentials {
username = project.properties.get("repoUsername")
password = project.properties.get("repoPassword")
}
}
}
}
// This snippet shows how to define a remote repository.
// Credentials should be managed securely, not hardcoded.Laajennusten käyttöönoton tarkistus
On aika testata, kuinka hyvin ymmärrätte laajennusten käyttöönoton ja julkaisemisen.
Kertaus: käyttöönotto ja julkaiseminen
Olette oppineet tekemään mukautetuista Gradle-laajennuksista aidosti uudelleenkäytettäviä!
- Voitte ottaa yksinkertaiset skriptien laajennukset käyttöön komennolla
apply from:. - Hakemiston
buildSrclaajennukset ovat automaattisesti käytettävissä tunnuksensa perusteella. maven-publish-laajennuksen avulla voitte määrittää ja julkaista laajennuksen artefaktit.- Julkaiseminen kohteeseen
mavenLocal()sopii erinomaisesti paikalliseen testaukseen. - Julkaistun laajennuksen käyttöä varten määrittäkää
mavenLocal()tiedostossasettings.gradleja ottakaa laajennus käyttöön tunnuksen ja version perusteella. - Etärepositoriot mahdollistavat laajennusten jakamisen tiimien kesken tai julkisesti.
Nyt voitte rakentaa tehokasta ja jaettavaa koontilogiikkaa!
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 ”Laajennusten käyttöönotto ja julkaiseminen” ilmainen?
Kyllä – oppitunnin ”Laajennusten käyttöönotto ja julkaiseminen” 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 ”Laajennusten käyttöönotto ja julkaiseminen”?
Opiskelkaa käyttämään mukautettuja laajennuksia projekteissa ja julkaisemaan niitä paikalliseen tai etärepositorioon. 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 3/4.
Kuinka kauan ”Laajennusten käyttöönotto ja julkaiseminen”-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
- Gradle-laajennusten perusteet
- Binaarilaajennusten rakentaminen
- Laajennusten käyttöönotto ja julkaiseminen
- Plugin-laajennukset ja määritettävät DSL:t