0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【KMP】KMPチュートリアル「5. Share more logic」で発生する Unresolved reference: lifecycle エラー

Posted at

はじめに

Kotlin Multiplatform 公式チュートリアルの 「5. Share more logic」 を実施する場合に発生する Unresolved reference: lifecycle エラーの解決方法について記載する。
本エラーは、 Kotlin Multiplatform 公式チュートリアルの指示通りに Kotlin Multiplatform wizard で KMP プロジェクトを作成した場合に発生する。(2024/01/28 時点)
Android エンジニアにとっては何でもないエラーであるが、 iOS エンジニアにとって、Gradle 関連のエラーは解決に時間を要するだろうという予測のもと本記事を書いた。

事象

5. Share more logic」 の以下を実施すると、

e: file:///Users/xxxx/プロジェクト名/composeApp/build.gradle.kts:27:42: Unresolved reference: lifecycle

というエラーが発生する。

解決方法

libs.androidx.lifecycle.viewmodel.compose は "libs."で始まるのでバージョンカタログにライブララリが定義されていないのだろうと予測できる。
gradle/libs.versions.toml を覗くと案の定 "androidx-lifecycle-viewmodel-compose" という定義はない。

libs.androidx.lifecycle.viewmodel.compose がなぜ androidx-lifecycle-viewmodel-compose という定義でバージョンカタログファイルに定義されるのかということはここを参照されたい。

gradle/libs.versions.toml に androidx-lifecycle-viewmodel-compose を以下のように追加する。バージョンについて ここ を参照してはなるべく新しいものを設定すると良いと思われる。

[versions]
...
lificycle-viewmodel-compose = "2.7.0"

[libraries]
...
androidx-lifecycle-viewmodel-compose = { module = "androidx.lifecycle:lifecycle-viewmodel-compose", version.ref = "lificycle-viewmodel-compose" }

これでエラーが解消され、ビルドに成功するはずである。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?