前言
看过小刀最近朋友圈的小伙伴应该都知道, 最近小刀在写一个桌面的工具包, 可以连k8s, 可以做图床等等, 其中用到的技术栈就是 jdk14+javaFX....用上面用jpackage打包之后的应用, 在不同的平台上打的包, 可以在不同的平台上运行. 虽然在UI/字符显示上会有些许差别,但是差别不怎么大. 可以通过接口-不同平台实现类的方式进行处理....如上图所示: 该文件的关键在于三个关键字(requires, opens, export) , 因为我们这个项目已经是最上层模块, 不需要为别的模块提供方法, 所以没有用到export关键字.
requires...: 我们这个模块(模块名: red.lixiang.tools.sunflower) 需要javafx.controls和javafx.fxml模块
opens: 主要是反射使用,javafx.fxml...可以反射red.lixiang.tools.sunflower中的类,然后可以对应实例化,或者调用实例中的方法
Jlink
在java 模块化中, jlink命令是核心,其作用就是把jdk中我们需要模块抽出来