1

我正在使用 Android Studio 4.1.1、ObjectBox 3.0.1 和 Kotlin 1.5.10。

当我点击测试类或 run 上的运行./gradlew :app-core:test按钮时,测试运行良好,但是当我点击Run X with coverage测试运行时,我显示

Project Is out of Date: Project class files are out of date. Would you like to recompile? The refusal to do it will result in incomplete coverage information

如果我点击Cancel后台的覆盖率报告就会消失(所以我无法读取覆盖率信息,编辑器中的代码行也没有覆盖率信息)。

如果我单击OK开始编译,并且在 ObjectBox 生成的文件中出现编译错误SomeEntityCursor

Error:(14, 49) java: cannot find symbol
  symbol: class SomeEntity

其他生成的类中也发生了同样的情况(请参阅下面的详细信息)。但底线是生成的代码似乎无法看到我的实体类。值得注意的是:生成的代码与实体类在同一个模块中。

仅供参考,SomeEntity看起来像这样:

@Entity
data class SomeEntity(@Id var id: Long = 0, ...)

奇怪的是,有时它可以编译,但如果我以前这样做肯定不会Clean project

这是完整的输出(对于示例包名称与日志中的不一致,我很抱歉,我希望它没有任何区别!):

Information:Kotlin: kotlinc-jvm 1.4.32 (JRE 1.8.0_242-release-1644-b3-6915495)
Information:java: Errors occurred while compiling module 'SomeApp.common.common-android'
Information:javac 1.8.0_242-release was used to compile java sources
Information:11/8/21 2:46 PM - Build completed with 21 errors and 3 warnings in 8 s 772 ms
/Users/xxx/Documents/Programming/SomeApp/common/common-android/build/generated/source/kapt/debug/com/somecompany/someapp/common/android/persistence/SomeEntityCursor.java
    Error:Error:line (14)java: cannot find symbol
  symbol: class SomeEntity
    Error:Error:line (34)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntityCursor
    Error:Error:line (44)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntityCursor
    Error:Error:line (16)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntityCursor
    Error:Error:line (18)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntityCursor.Factory
/Users/xxx/Documents/Programming/SomeApp/common/common-android/build/generated/source/kapt/debug/com/somecompany/someapp/common/android/persistence/SomeEntity_.java
    Error:Error:line (15)java: cannot find symbol
  symbol: class SomeEntity
    Error:Error:line (93)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (23)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (27)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (34)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (37)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (40)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (44)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (50)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (63)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (73)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (78)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (83)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (88)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_
    Error:Error:line (95)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_.SomeEntityIdGetter
    Error:Error:line (23)java: cannot find symbol
  symbol:   class SomeEntity
  location: class com.comecompany.someapp.common.android.persistence.SomeEntity_

不幸的是,我在网上找不到有关该问题的任何信息信息,因此感谢您提供任何提示,谢谢!

4

0 回答 0