バージョンカタログ
依存関係のバージョンを管理します
「バージョンカタログ」はCoddyKit上の無料Kotlin Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはKotlin Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Kotlin Academyコースには全4レッスンが含まれています。
分散したバージョンの問題
マルチモジュールプロジェクトでは、依存関係のバージョンが複数のビルドファイルに重複して記述されます。1つのライブラリを更新するだけでも多くの場所を編集する必要があり、ミスや不整合の原因になります。
バージョンカタログとは
バージョンカタログは、依存関係の座標とバージョンを1か所に集約します。Gradleは型安全なアクセサーを生成するため、どのモジュールからでも参照できます。
libs.versions.toml ファイル
デフォルトのカタログは gradle/libs.versions.toml にあります。バージョン、ライブラリ、プラグイン、バンドルのセクションで構成されています。
[versions]
kotlin = "2.0.0"
coroutines = "1.8.1"ライブラリの宣言
[libraries] セクションでは、エイリアスを依存関係の座標に対応付け、名前でバージョンを参照します。
[libraries]
coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" }
guava = { module = "com.google.guava:guava", version = "33.2.1-jre" }build.gradle.kts でライブラリを使用する
生成された libs アクセサーを使ってカタログのエントリを参照します。ハイフンはドットになります。
dependencies {
implementation(libs.coroutines.core)
implementation(libs.guava)
}プラグインの宣言
[plugins] セクションでプラグインの ID とバージョンを一元管理します。
[plugins]
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }カタログのプラグインの適用
alias 関数を使い、plugins { } ブロックでカタログのプラグインを参照します。
plugins {
alias(libs.plugins.kotlin.jvm)
alias(libs.plugins.serialization)
}バンドル
バンドルは関連するライブラリをまとめるため、1つのアクセサーで追加できます。
[bundles]
testing = ["junit", "mockk"]
// build.gradle.kts:
// testImplementation(libs.bundles.testing)型安全性と自動補完
libs は生成コードなので、IDEはエントリを自動補完します。また、存在しないエイリアスを参照するとビルドが早い段階で失敗するため、生の文字列よりもはるかに安全です。
命名規則
エイリアスではハイフンやドットを区切り文字として使い、ネストされたアクセサーに対応させます。coroutines-core は libs.coroutines.core になります。アンダースコアは避けてください。
モジュール間での共有
単一のTOMLファイルは、すべてのモジュールから自動的に参照できます。バージョンを1か所で更新すれば、すべてのモジュールに反映されます。これがカタログの最大の利点です。
クイックチェック
マルチモジュールプロジェクトでバージョンカタログを使う主な利点は何ですか。
まとめ
バージョンカタログによって依存関係を効率的に管理できます。
gradle/libs.versions.tomlでバージョン、ライブラリ、プラグイン、バンドルを宣言する- 型安全な
libsアクセサーとalias(...)を使って参照する - 1か所を編集するだけで、すべてのモジュールを更新できる
これでGradleコースは完了です。
よくある質問
「バージョンカタログ」レッスンは無料ですか?
はい。「バージョンカタログ」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Kotlin Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Kotlin Academyコースには全4レッスンが含まれています。
「バージョンカタログ」で何を学びますか?
依存関係のバージョンを管理します ブラウザで直接実行するハンズオンコードでKotlin Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Kotlin Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのKotlin Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「バージョンカタログ」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このKotlin Academyレッスンでコードを書いて実行できますか?
はい。すべてのKotlin Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Gradle Kotlin DSL
- 依存関係とプラグイン
- カスタムタスク
- バージョンカタログ