java-使用@Query Room Persistence Library时的org.gradle.execution.MultipleBuildFailures

前端之家收集整理的这篇文章主要介绍了java-使用@Query Room Persistence Library时的org.gradle.execution.MultipleBuildFailures 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在Dao类(房间持久性库)中使用@Query时出现生成错误

我在项目中同时使用java和kotlin,因此可能存在依赖关系问题,我尝试了不同的实现和kapt,但没有运气.

我的依赖项(有关房间持久性库的更多信息,请参见)

  1. dependencies {
  2. implementation fileTree(include: ['*.jar'],dir: 'libs')
  3. implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
  4. //noinspection GradleCompatible
  5. implementation 'com.squareup.okhttp3:logging-interceptor:3.11.0'
  6. implementation 'com.google.android.material:material:1.1.0-alpha05'
  7. implementation "org.jetbrains.anko:anko:$anko_version"
  8. implementation "org.jetbrains.anko:anko-commons:$anko_version"
  9. implementation 'com.google.code.gson:gson:2.8.5'
  10. implementation 'com.google.dagger:dagger:2.19'
  11. implementation 'androidx.appcompat:appcompat:1.1.0-alpha03'
  12. implementation 'com.google.firebase:firebase-database:16.1.0'
  13. annotationProcessor 'com.google.dagger:dagger-compiler:2.19'
  14. kapt 'com.google.dagger:dagger-android-processor:2.19'
  15. kapt 'com.google.dagger:dagger-compiler:2.19'
  16. implementation 'com.squareup.retrofit2:retrofit:2.4.0'
  17. implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
  18. implementation 'com.squareup.retrofit2:adapter-rxjava2:2.4.0'
  19. implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'
  20. implementation 'com.google.code.findbugs:jsr305:3.0.2'
  21. testImplementation 'junit:junit:4.12'
  22. androidTestImplementation 'androidx.test:runner:1.1.1'
  23. androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
  24. implementation 'androidx.cardview:cardview:1.0.0'
  25. implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
  26. //BUTTER KNIFE
  27. implementation 'com.jakewharton:butterknife:10.1.0'
  28. kapt 'com.jakewharton:butterknife-compiler:10.1.0'
  29. implementation 'androidx.recyclerview:recyclerview:1.0.0'
  30. //crashlytics
  31. implementation 'com.crashlytics.sdk.android:crashlytics:2.9.9'
  32. // Update your firebase-core version,if it's lower than v11.4.2
  33. implementation 'com.google.firebase:firebase-core:16.0.8'
  34. implementation 'com.crashlytics.sdk.android:crashlytics-ndk:2.0.5'
  35. //firebase messaging
  36. implementation 'com.google.firebase:firebase-messaging:17.5.0'
  37. //sms retrival
  38. implementation 'com.google.android.gms:play-services-base:16.1.0'
  39. implementation 'com.google.android.gms:play-services-identity:16.0.0'
  40. implementation 'com.google.android.gms:play-services-auth:16.0.1'
  41. implementation 'com.google.android.gms:play-services-auth-api-phone:16.0.0'
  42. implementation project(':library')
  43. //for intro
  44. implementation 'com.github.AppIntro:AppIntro:5.1.0'
  45. //picaso
  46. implementation 'com.squareup.picasso:picasso:2.71828'
  47. //room
  48. def room_version = "1.1.1"
  49. implementation "android.arch.persistence.room:runtime:$room_version"
  50. kapt "android.arch.persistence.room:compiler:$room_version"

我的实体班

  1. @Entity(tableName = "product")
  2. public class Product
  3. {
  4. @PrimaryKey
  5. @ColumnInfo(name = "id")
  6. public Integer id;
  7. @ColumnInfo(name = "category")
  8. public String category;
  9. @ColumnInfo(name = "name")
  10. public String name;
  11. @ColumnInfo(name = "price")
  12. public Double price;
  13. @ColumnInfo(name = "desc")
  14. public String desc;
  15. @ColumnInfo(name = "img_url")
  16. public String img_url;
  17. public Product(Integer id,String category,String name,Double price,String desc,String img_url) {
  18. this.id = id;
  19. this.category = category;
  20. this.name = name;
  21. this.price = price;
  22. this.desc = desc;
  23. this.img_url = img_url;
  24. }
  25. }

我的Dao类在不使用@Query时构建良好,
但是使用@Query时,会导致构建错误.

  1. @Dao
  2. public interface CartDao
  3. {
  4. @Query("SELECT * FROM product")
  5. ArrayList<Product> getAllProduct();
  6. @Delete
  7. void delete(Product cart);
  8. }

构建错误

org.gradle.execution.MultipleBuildFailures: Build completed with 1 failures..
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.gradle.api.tasks.TaskExecutionException: Execution Failed for task ‘:app:kaptPureshDebugKotlin’…6 more
Caused by: org.gradle.api.GradleException: Compilation error. See log for more details
at org.jetbrains.kotlin.gradle.tasks.TasksUtilsKt.throwGradleExceptionIfError(tasksUtils.kt:14)
at org.jetbrains.kotlin.compilerRunner.GradleKotlinCompilerWork.run(GradleKotlinCompilerWork.kt:135)
at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner.runCompilerAsync(GradleKotlinCompilerRunner.kt:152)
at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner.runCompilerAsync(GradleKotlinCompilerRunner.kt:147)
at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner.runJvmCompilerAsync(GradleKotlinCompilerRunner.kt:87)
at org.jetbrains.kotlin.gradle.internal.KaptWithKotlincTask.compile(KaptWithKotlincTask.kt:72)..34 more

最佳答案
  1. @Dao
  2. public interface CartDao
  3. {
  4. @Query("SELECT * FROM product")
  5. ArrayList<Product> getAllProduct();
  6. @Delete
  7. void delete(Product cart);
  8. }

代替ArrayList使用列表

猜你在找的Android相关文章