Kotlin Academy · Lektion

Beroenden och plugin-program

Konfigurera bygget

Lektion 2 av 413 steg

Beroenden och plugin-program är en gratis lektion i Kotlin Academy på CoddyKit. Detta är lektion 2 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Kotlin Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Kotlin Academy innehåller totalt 4 lektioner.

Beroendekonfigurationer

Gradle grupperar beroenden efter konfiguration, vilket styr när och var de är tillgängliga:

  • implementation — kompilering och körning, exponeras inte för konsumenter
  • api — exponeras även för konsumenter
  • testImplementation — endast för tester

implementation jämfört med api

implementation döljer ett beroende för moduler som är beroende av Din, vilket förbättrar byggprestanda och inkapsling. Använd api endast när beroendet förekommer i dina publika typer.

dependencies {
    api("com.squareup.okio:okio:3.9.0")          // leaks into public API
    implementation("com.google.code.gson:gson:2.11.0") // internal only
}

compileOnly och runtimeOnly

Vissa beroenden behövs endast under en fas:

  • compileOnly — finns vid kompilering men paketeras inte (till exempel annotationer)
  • runtimeOnly — finns endast vid körning (till exempel en JDBC-drivrutin)
dependencies {
    compileOnly("org.projectlombok:lombok:1.18.32")
    runtimeOnly("org.postgresql:postgresql:42.7.3")
}

Beroendekoordinater

En koordinat har formatet group:name:version. Du kan dela upp den uttryckligen för tydlighetens skull.

dependencies {
    implementation(group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-core", version = "1.8.1")
}

Projektberoenden

I ett bygge med flera moduler är en modul beroende av en annan med project(...).

dependencies {
    implementation(project(":core"))
}

Tillämpa kärnpluginer

Inbyggda pluginer behöver ingen version. Community-pluginer tillämpas med ett id och en version.

plugins {
    id("java-library")
    kotlin("jvm") version "2.0.0"
    id("com.github.johnrengelman.shadow") version "8.1.1"
}

Pluginer från portalen

De flesta pluginer hämtas automatiskt från Gradle Plugin Portal när de tillämpas i blocket plugins { } med sitt id.

plugins {
    id("org.jetbrains.kotlin.plugin.serialization") version "2.0.0"
}

Exkludera transitiva beroenden

Ni kan exkludera ett oönskat transitivt beroende som följer med ett annat bibliotek.

dependencies {
    implementation("com.example:lib:1.0") {
        exclude(group = "org.slf4j", module = "slf4j-api")
    }
}

Tvinga fram en version

Lös konflikter genom att tvinga fram en specifik version via en upplösningsstrategi.

configurations.all {
    resolutionStrategy {
        force("com.google.guava:guava:33.2.1-jre")
    }
}

Inspektera beroendeträdet

Använd aktiviteten dependencies för att se den upplösta grafen och diagnostisera konflikter.

// ./gradlew dependencies
// ./gradlew app:dependencies --configuration runtimeClasspath

Välj rätt konfiguration

Använd implementation som standard. Använd api sparsamt, testImplementation för tester och paret compileOnly/runtimeOnly när behovet gäller en viss fas.

Snabbkontroll

Ett loggningsbibliotek används bara inuti er modul och förekommer aldrig i era publika typer. Vilken konfiguration är bäst?

Sammanfattning

Ni har konfigurerat bygget:

  • Konfigurationerna implementation, api, compileOnly, runtimeOnly, testImplementation
  • Tillämpa pluginer med id (och version) eller som kärnpluginer
  • Exkludera och tvinga fram versioner samt inspektera trädet

Nästa steg: skriva anpassade tasks.

Gratis att börja

Lär dig Kotlin med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
51
Lektioner
203

Vanliga frågor

Är lektionen ”Beroenden och plugin-program” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Kotlin Academy, inklusive ”Beroenden och plugin-program”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Kotlin Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Beroenden och plugin-program”?

Konfigurera bygget Ni övar på Kotlin Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Kotlin Academy?

Du behöver inga förkunskaper. Utbildningen i Kotlin Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”Beroenden och plugin-program”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Kotlin Academy-lektionen?

Ja. Varje Kotlin Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Gradle Kotlin DSL
  2. Beroenden och plugin-program
  3. Anpassade tasks
  4. Versionskataloger
← Tillbaka till Kotlin Academy