Caused by: org.gradle.api.InvalidUserCodeException: Querying the mapped value of map(java.io.File property(org.gradle.api.file.Directory, fixed(class org.gradle.api.internal.file.DefaultFilePropertyFactory$FixedDirectory, /home/wang/Downloads/test/LoveLiveMusicApp/app/build/generated/ap_generated_sources/debug/out)) org.gradle.api.internal.file.DefaultFilePropertyFactory$ToFileTransformer@1922cab3) before task ':app:compileDebugJavaWithJavac' has completed is not supported
时间: 2024-04-19 21:26:17 浏览: 364
Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
这个异常的原因是在任务 `:app:compileDebugJavaWithJavac` 完成之前,尝试查询了一个映射值。根据异常的描述,这个映射值可能是一个 `java.io.File` 类型的属性。然而,在 Gradle 构建过程中,任务的执行是异步的,所以在任务完成之前查询映射值是不被支持的。
要解决这个问题,可以尝试以下几个步骤:
1. 确保在查询映射值之前,任务 `:app:compileDebugJavaWithJavac` 已经成功完成。可能需要查看 Gradle 构建过程的详细日志,以确定任务的执行顺序。
2. 如果映射值是在任务的配置阶段被查询的,可以将查询操作放在任务的执行阶段。这样可以确保任务执行完成后再进行查询。
3. 如果查询操作是必须在配置阶段进行的,可以考虑使用 Gradle 的内置的属性变量(property variables)来延迟查询操作,直到任务执行阶段再进行实际的查询。例如,可以使用 `provider` 方法来创建一个延迟查询的属性。
希望以上的建议能帮助你解决这个问题!如果还有其他问题,请随时提问。
阅读全文