Kotlin-Updates: Exposed 0.32

Sie lesen hier Teil 2 meiner Kotlin-Updates-Serie, in der ich Neuerungen und Änderungen rund um Kotlin seit dem Erscheinen meines Kotlin-Buchs zusammenfasse. Die Datenbank-Bibliothek Exposed (siehe Kapitel 19) hat sich mittlerweile von Version 0.27 zu Version 0.32 weiterentwickelt.

Dieser Text bezieht sich auf die folgenden Versionsnummern:

IntelliJ: 2021.1
Kotlin: 1.5.20
Exposed: 0.32.1
Gradle: 6.8

Wie Sie im Changelog nachlesen können, bietet Exposed zwar diverse kleine neue Features, zeichnet sich aber nicht durch grundlegenden Neuerungen aus. Die Beispiele aus dem Buch (siehe Kapitel 19) funktionieren nach einem Update von gradle-wrapper.properties und build.gradle unverändert und — soweit ich feststellen konnte — fehlerfrei.

Gradle-Updates

In build.gradle muss compile durch implementation ersetzt werden. Außerdem haben sich natürlich unzählige Versionsnummern geändert. jcenter() sollte aus der Liste der Repositories entfernt werden, weil das Repository ab 2022 nicht mehr unterstützt wird. Aktuelle Exposed-Versionen befinden sich in mavenCentral. build.gradle für ein Projekt mit der Exposed-Projekt sieht dann in etwa wie das folgende Muster aus:

plugins {
    id 'org.jetbrains.kotlin.jvm' version '1.5.20'
}
group 'org.example'
version '1.0-SNAPSHOT'
repositories {
    mavenCentral()
}
dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
    implementation "org.jetbrains.exposed:exposed-core:0.32.1"
    implementation "org.jetbrains.exposed:exposed-dao:0.32.1"
    implementation "org.jetbrains.exposed:exposed-jdbc:0.32.1"
    implementation "org.xerial:sqlite-jdbc:3.36.0.1"
    ...
    // SQLite, H2, MySQL
    implementation "org.xerial:sqlite-jdbc:3.36.0.1"
    implementation "com.h2database:h2:1.4.200"
    implementation "mysql:mysql-connector-java:8.0.25"
    implementation "com.zaxxer:HikariCP:4.0.3"

    // Logger
    implementation 'org.slf4j:slf4j-nop:1.7.31'
}
compileKotlin {
    kotlinOptions.jvmTarget = "11"
}
compileTestKotlin {
    kotlinOptions.jvmTarget = "11"
}

Download

Aktualisierte Beispieldateien zu Kapitel 19 können Sie hier herunterladen:

https://kofler.info/uploads/kotlin/kap19.zip

Die Kotlin-Updates-Serie

Weitere Kotlin-Update-Artikel finden Sie hier auf meiner Website:

https://kofler.info/tag/kotlin-updates