AndroidでRoomを使ってSQLiteを書いたりなんやかんやしている時に、以下のようなエラーが出ました。
Execution failed for task ':app:kaptDebugKotlin'. > A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$KaptExecutionWorkAction > java.lang.reflect.InvocationTargetException (no error message)
いつもならエラーの詳細がLogcatで確認できますが、今回はこのようなエラーが出て、何が間違っているのかわからず、行き詰ってしまいました。
広告
ネットで調べてもわからず、直前に操作した内容も覚えておらず、バックアップも取っていなかったので、全てのソースコードを調べる羽目になりました。
エラーの原因はSQL文の記述ミスでした。
//誤 (longは予約語?) @Query("SELECT * FROM word_table WHERE id = :long") suspend fun getById(long: Long): Word //正 @Query("SELECT * FROM word_table WHERE id = :mylong") suspend fun getById(mylong: Long): Word
こんなしょうもないミスで、解決するのに数時間を費やしてしまいました。そろそろGithubというものを導入しようかと思います。