2017-07-15 10 views
0

Androidのdbコード形式のアノテーションプロセッサを変換しています。自分自身をRoomに書きました。私は本当に曖昧なエラーを起こしています。かなり時間がたって、分裂と征服によって、私は缶詰めのクエリを実行する2つの方法に絞りました(つまり、パラメータを取らない)。次のような:./gradle --stacktrace assembleDebugを実行した後Androidを使ったgradle例外パラメータのないdoa定義の部屋

@Query("update blah set mDownloadStatus=3, mTaskId=0 where mDownloadStatus=2 or mDownloadStatus >= 4") 
    void resetDownloads(); 

、私は(そこより、それを超えていたが、これはそれの肉である)以下のスタックトレースを得ました。

原因:java.util.NoSuchElementException:リストが空です。 android.arch.persistence.room.writer.DaoWriter.createPreparedDeleteOrUpdateQueriesで (DaoWriter.kt:124)android.arch.persistence.room.writerで :kotlin.collections.CollectionsKt ___ CollectionsKt.first(178 _Collections.kt)で 。 DaoWriter.createTypeSpecBuilder(DaoWriter.kt:86) android.arch.persistence.room.writer.ClassWriter.write(ClassWriter.kt:40) android.arch.persistence.room.RoomProcessor $ DatabaseProcessingStep.process(RoomProcessor。 KT:60) com.google.auto.common.BasicAnnotationProcessor.processでcom.google.auto.common.BasicAnnotationProcessor.process(BasicAnnotationProcessor.java:318) (BasicAnnotationProcessor.java:171) ではcom.sunました。 tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEn vironment.java:794) at com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:705) (com.sun.tools.javac.processing.JavacProcessingEnvironment.access)$ 1800(JavacProcessingEnvironment.java:91 ) at com.sun.tools.javac.processing.JavacProcessingEnvironment $ Round.run(JavacProcessingEnvironment.java:1035) at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1176) at com .sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1170) at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:856) at com.sun.tools.javac .main.Main.compile(Main.java:523) ... 126 more

答えて

関連する問題