在此项目中:https://github.com/wise-coders/groovyfx。,GroovyFX的一个分支(参见源代码)。升级到 OpenJDK 17 和 Gradle 7.6 我收到此错误(在 Java 8 下没有发生):
Could not find class for Transformation Processor groovyx.javafx.beans.FXBindableASTTransformation declared by groovyx.javafx.beans.FXBindable
FXBindableASTTransformation用作FXBindable中的注释。 我怎样才能防止这个错误?
可以通过执行来测试一下
cd groovyfx
gradlew build
gradlew runAccordionDemo
JavaFX 库发生了重大变化,从 Java 11 开始,它不再与 JDK 捆绑在一起。确保您具有正确的 JavaFX 依赖项并且它们与 Java 17 兼容。
解决方案: 将必要的 JavaFX 依赖项添加到您的项目中:
dependencies {
implementation 'org.openjfx:javafx-controls:17.0.1'
implementation 'org.openjfx:javafx-fxml:17.0.1'
}
调试技巧: 使用 --show-module-resolution 运行您的应用程序以查看模块是如何解决的并识别任何问题。 确保您的 IDE 或构建工具已正确配置为使用 Java 17 JDK。