1.单文件
1.1 无包名编译,运行,打包
1.2 有包名,编译,运行,打包
2.多文件
2.1 带包名,编译,运行,打包
3.引入外部包
3.1引入外部包,编译,运行,打包。
了解这个,对于使用开发工具中的编译错误,会有一些更深和直接的理解。
比如导入外部jar,手工编译后。很直观的能知道。用工具导入,最少要做到2点:1,导入的jar应该在根目录或它以下的目录中。这样才能打包的时候才能包含进入。2 需要 在某个地方设置包路径。
如eclipse .1 手动拖入一个jar到某个floder中。2.加入jar,顺便告诉路径。这里:flower/libs
1.1
javac 编译。
jar 打包 。 注意 有个 manifest . 可以 手工添加进去 。或者 先 1.cf 自动生成。2修改 manifest,加入入口函数地址。 .3 cMf 命令。仅仅打包。
java 运行 :可执行 class 和 jar.可以看到第二行 和 第四行 。分别 是 运行的不同的 文件类型。
1.2
带包名文件,运行 class必须带包路径。
要打包为jar ,要注意 函数入口也要带路径。而且,打包命令入口目录是 顶级目录。
以上2点是和不带包名的主要区别。
2.1
多文件,发现和单文件基本没有什么不同。
用命令 javac *.java .编译所有原文件就好了。估计会自动查找依赖关系,来编译吧。
3.1
先编译和打包出一个 功能库 如 mycalate.jar
第三方包随意放入根目录任何一个目录。这里放入根目录下
为了找到第3方包。需要命令去告知第三方包的路径。 -Djava.ext.dirs= xxx
加入这个路径折后。基本也和一般打包一样。 运行包也需要加入 路径参数去执行
需要注意的是。打包后如下图。 app.jar 是直接包含了第三方包的。这里是包含了mycalate.jar 这个第三方包。