Sat*_*uja 1 java javafx openjfx javafx-11
之前我的项目曾经是Java 8,但现在我使用Java 11和JavaFX 11,现在JavaFX已经从Java 11开始与Java分离了.我没有下载JavaFX SDK但是在pom.xml中添加了以下依赖项以获取必需的模块和jar文件,它们在早期版本中曾经是Java本身的一部分.
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>11</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
但是我can not be resolved to a type在@FXML注释和FXMLLoader类上遇到了编译错误.
我是否需要添加一些其他/额外的依赖项来解决此问题?
Jos*_*eda 11
FXML(@FXML注释,FXMLLoader ......)被移植到javafx.fxmlJava 9版本的模块中.
在JavaFX 11之前,无论何时调用与JavaFX相关的内容,您都可以在SDK中使用所有javafx模块.
但现在你必须包括你需要的那些:
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>11</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-fxml</artifactId>
<version>11</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
请注意,javafx.controls取决于javafx.graphics和java.base,因此您不需要包含这些.而且javafx.fxml直接依赖于javafx.base.