javaFx 下的模块系统
Java 9 fx引入的模块化系统中的一个文件,java8版本还没,开始不知道的容易被坑。模块系统用于定义和配置模块。模块化系统的目的是将代码分解为更小的单元(模块),以便更好地组织、管理和重用代码。
简而言之,就是代码分解为小的模块,并管理模块间相互访问的权限。
模块的名称:使用
模块的依赖关系:使用
模块的导出包:使用
模块的开放包:使用
模块的使用服务:使用
模块的提供服务:使用
下面是一个简单的
module com.example.jfxtest01 { requires javafx.controls; requires javafx.fxml; exports com.example.Data; opens com.example.jfxtest01 to javafx.fxml; exports com.example.jfxtest01; }
表示该模块依赖于JavaFX的
这一行表示模块将
比如我希望我的
如果不加就会报:
java.lang.RuntimeException: java.lang.IllegalAccessException: module javafx.base cannot access class com.example.Data.TabData
Caused by: java.lang.IllegalAccessException: module javafx.base cannot access class com.example.Data.TabData
javafx项目必有这