本地一般,都是使用IDE进行编译运行Java项目,就算在Linux下没有IDEA,还有Maven、Gradle这种工具可以用来部署,很多东西基本上就不用我们考虑了,太方便了,为了做到更进一步认识的话,我们纯手动的去打包一个java的项目。
1.目录结构
src存放了我们的Java类
libs下是我们要用到的jar包
classes是编译后.class文件的输出目录
2.程序代码
3.编译
manual-compile> javac -encoding utf-8 -Djava.ext.dirs=libs -d classes src\com\compile\demo\*.java src\com\compile\demo\bean\*.java
-encoding 指定编码(如果不指定,遇到中文可能会出现乱码)
-Djava.ext.dirs 调用的jar包存放的目录
-d 指定输出目录
因为两个java类不在同一个文件夹下,所以要用空格分开
(注:因为在Windows下,所以路径中的斜杠都是\,Linux下用/,发现很多小伙伴分不清,这里有个小技巧,键盘上W是Windows的首字母,同W字母一条线的斜杠就是Windows下的斜杠\,另外一个斜杠/就是Linux下的了)
也可通过-classspath指定调用的外部jar包:
javac -encoding utf-8 -classpath libs\commons-lang3-3.4.jar -d classes src\com\compile\demo\*.java src\com\compile\demo\bean\*.java
-classpath 指定外部jar包的所在路径,如果有多个jar包只需用;号隔开即可,例如:-classpath libs\commons-collections-3.2.2.jar;libs\commons-lang3-3.4.jar
4.运行
当前目录结构如下:
执行:
manual-compile\classes> java -Djava.ext.dirs=..\libs com.compile.demo.Main
运行结果:Hello zhangsan
也通过-classpath执行:java -classpath ;..\libs\commons-lang3-3.4.jar com.compile.demo.Main,注意-classpath后面有个分号,如果不加这个分号,就会报错。
无论使用哪种方法正常地构建Java代码(Ant, Maven, Gradle, 或者 IDE),但至少要了解在没有任何工具的帮助下,如何使用javac来构建Java代,尤其是存在外部依赖的时候。详细的参数说明,可通过javac -help或者javac -help -X来查看。
网友评论