前言
看过小刀最近朋友圈的小伙伴应该都知道, 最近小刀在写一个桌面的工具包, 可以连k8s, 可以做图床等等, 其中用到的技术栈就是 jdk14+javaFX....JDK14(Module)+javaFx
JDK14(Module)
选用JDK14 , 主要是因为其中的jpackage命令, 这个命令可以帮我们把java程序打包成win中的exe , 打包成mac...这样使用者就不需要再单独安装jdk/jre了, 加上java9之后java的module化, 可以最大程度上的精简jre, 虽然是精简了,但实际上,大家可以看到, 每次我在群里面发的包,还是接近100MB了.
javaFX...因为我们这个项目已经是最上层模块, 不需要为别的模块提供方法, 所以没有用到export关键字.
requires: 我们这个模块(模块名: red.lixiang.tools.sunflower) 需要javafx.controls...和javafx.fxml模块
opens: 主要是反射使用,javafx.fxml可以反射red.lixiang.tools.sunflower中的类,然后可以对应实例化,或者调用实例中的方法
Jlink