编译
mkdir classes src thireadclass
src/com/cn/jettech/a.java
src/com/cn/jettech1/b.java
编译a.java的时候需要b.java 源码依赖关系
1、javac -verbose -classpath .:classes:thireadclass -sourcepath src src/com/cn/jettech/a.java -d classes
classes:目录是存在编译后的class
src:源码目录(包路径) src/com/cn/jettech/a.java
thirdclass:编译依赖class文件
-classpath:制定class目录
-sourcepath:指定源码目录,解决源码依赖关系,在编译a.java的时候 会根据sourcepath制指定的源码目录自动搜索其他源码文件
最佳实战:sourcepath:指定源码最顶层目录,src/com/cn/jettech/a.java 指定含有main函数的java文件这样省心,但是费时间,因为需要搜索,不是定制源码目录
-d:指定编译后的存放目录(会自动创建包路径)
打包
1、jar -cvfm a.jar META-INF/MANIFEST.MF classes thireadclass
cat META-INF/MANIFEST.MF
Manifest-Version: 1.0
Class-Path: .
Main-Class: com.cn.jettech.javasyntx
java -jar a.jar
2、解压 jar -xf a.jar
执行:
1、java -jar a.jar 会读取 META-INF/MANIFEST.MF文件 里面定义了main入口 版本 class路径等相关内容信息
2、java -cp .:thireadclass:classes com.cn.jettech.javasyntx
cd 到包名同级目录即可
cd classes
ls 会显示com目录
java -cp class路径 包名.类名