我收到意外的 Gradle 错误,我想知道这意味着什么,我看到的完整错误消息是:
Can only transition State of build ':game-api' to state BuildFinishHooks from states [Configure, TaskSchedule, ReadyToRun] however it is currently in state ReadyToReset.
每当我尝试在 IntelliJ 中为在调试模式下运行的 gradle 应用程序(JavaExec Gradle 任务)“重建”类时,就会发生此错误。通常 Intellij 应该重新编译更改的类并重新加载它们。
我的设置的简化版本如下:
根
其中 game-engine 是一个 JVM 项目,作为构建包含在 root 中的 settings.gradle.kts 中,game-app 是 root 的子项目,定义了运行任务,game-api 包含作为构建在游戏引擎的settings.gradle.kts中。
我在其他地方有类似的结构设置,这让我怀疑这与 kotlin 多平台有关,我尝试找到有关此错误的更多详细信息,但我找不到任何其他引用。
gradle 大师能否解释一下如何解决此错误?
我也有同样的问题。我注意到它是从 IntelliJ 2023.3 开始发生的。 2023.2.6 及以下版本运行良好。 这可能是一种解决方法,即降级 IntelliJ。 另一种是点击 Compile And Reload File 两次,然后就可以了。
我怀疑它与 kotlin 编译器有某种关系,因为它只显示像 buildSrc 或 build-logic 这样的模块中的错误,我在其中使用 kotlin 脚本和 kotlin 类。