25 Aug 2017
javac命令是jdk中提供的一个工具,用于编译.java源文件为.class文件。我们主要使用这个命令及其参数来编译java项目。
参考以下文档
网上了解一下javac的用法,就可以学会如何编译一个单独的java文件。但是若要编译一个java项目,需要注意以下几点:
-classpath或-cp指定所有的依赖的jar包路径。linux使用:而windows使用;来间隔,例如lib/somejar.jar:/usr/local/tomcat/lib/somejar2.jar,不然会有很多import找不到包的错误-sourcepath@文件,文件中储存所有java文件的方式# 进入工程根目录,子目录是src源文件目录和lib-jar包目录 # 准备源文件路径文件 echo > javafile.txt find src/ -name *.java >> javafile.txt # 拼接一下jar包的路径 jarfiles=() for jar in $(find lib -name *.jar);do jarfiles=("${jarfiles[@]}" $jar);done classfile="" for cf in ${jarfiles[@]};do classfile="${classfile}:${cf}";done # src是源目录 # $classfile是jar文件路径 # class是编译后的class文件目录 # @javafile.txt是读取javafile.txt文件中列出的java源文件,来逐个编译,也可以直接写单个文件路径 javac -d class -sourcepath src -cp $classfile @javafile.txt