🙂

Android Roomにて、Schemaが指定のフォルダに急に出力されなくなった

に公開

Schemaのjsonが指定したフォルダ出力されない

room pluginと出力先の設定、DBクラスのアノテーションを[exportSchema = true]にしたのに何故か出力されなくなった時は
一度 appのbuild.gradle.ktのTopレベルに

android {
  ///
}

ksp {
    arg("room.schemaLocation", "$projectDir/schemas")
}

kspブロック部分を追加して、gradle sync → Rebuild してみてください。
とりあえずは一旦解決するかも?

経緯

Roomのバージョンを2.8.3だか2.8.4に上げたら急に出力しなくなり始めました。個人的なRoomのテストプロジェクトなのでライブラリとプラグインはKspとRoom関連しか入ってなく、設定を一通り見直してもドキュメント通りなのに困ったなぁと思っていました。
そんな時にドキュメント内で以下の一節を見つける。
https://developer.android.com/training/data-storage/room/migrating-db-versions?hl=ja#set_schema_location_using_annotation_processor_option

クラス諸々を用意するのが面倒だったので一旦必要な値を直書きで対処。

Discussion