java源码学习-JDK14之jpackage命令
鲁班学院 java源码学习- JDK14之jpackage命令 jpackage命令使用场景 使用场景是面向java桌面端程序打包. 可以让windows/mac 直接双击使用java程序,对系统里面有没有jdk/jre不做要求. 在这里,我们先理一下以前java桌面程序是怎么运行的: jdk8及以前 这时候的java客户端程序,主要分两部分, 一部分是可执行jar包, 一部分是电脑里面要装jdk/jre , 然后通过 java -jar XXXXX.jar 来运行程序. jdk9及以后的模块化 这是java模块化的一个分界线,其实jdk9,jdk10,我都没有用过, 我是直接尝试的jdk11. 在模块化的基础上, 项目多了一个文件, moudle-info.java 如下图所示: 如上图,所示,主要是 requires , opens , exports 这三个关键字. requires : 当前模块想要运行的话,需要哪些依赖,相当于在maven引包的基础上,要再声明一遍依赖 opens: 当前模块中的哪些包,可以被反射. 如fxml中要声明处理的controller , 每当fxml加载的时候,都会去新建一个controller实例, 所以需要opens controller的包名给javafx.fxml exports: 当前模块有哪些包,可以被引用.