编译可以采用手工的方式,在命令行中完成,也可以采用集成开发环境,自动完成。我们先介绍手工的方式,之后采用集成开发环境,毕竟工作之后大多数人会使用集成开发环境,并且集成开发环境能够提供开发效率,我们编写的时候可以提供语法错误,自动完成编译,代码修改后自动编译,可以为我们生成一些代码(后面介绍)。
手工编译需要知道JDK
中编译命令的位置,通常在Java
安装路径下面的bin
目录下(例如C:/Program Files/Java/jdk1.6.0/bin
)。
编译命令为:javac
用法:javac <
选项> <
源文件>
其中,可能的选项包括:
-g
生成所有调试信息
-g:none
不生成任何调试信息
-g:{lines,vars,source}
只生成某些调试信息
-nowarn
不生成任何警告
-verbose
输出有关编译器正在执行的操作的消息
-deprecation
输出使用已过时的 API
的源位置
-classpath <
路径>
指定查找用户类文件的位置
-cp <
路径>
指定查找用户类文件的位置
-sourcepath <
路径>
指定查找输入源文件的位置
-bootclasspath <
路径>
覆盖引导类文件的位置
-extdirs <
目录>
覆盖安装的扩展目录的位置
-endorseddirs <
目录>
覆盖签名的标准路径的位置
-d <
目录>
指定存放生成的类文件的位置
-encoding <
编码>
指定源文件使用的字符编码
-source <
版本>
提供与指定版本的源兼容性
-target <
版本>
生成特定 VM
版本的类文件
-version
版本信息
-help
输出标准选项的提要
-X
输出非标准选项的提要
-J<
标志>
直接将 <
标志>
传递给运行时系统
这些参数不用记,用到的时候再去查。或者在命令行下直接输入javac
,就可以看到。常用的有-d
在某个位置生成包的路径,-classpath
指定编译的时候用到的类库,也可以在环境变量中进行配置。
最简单的形式:
javac *.java
编译当前目录下的所有Java
文件。
要生成包的信息(例如Hello.java
所在的包为ch1
,可以在编译的时候创建一个包ch1
,并且把编译后的class
文件放在ch1
中),可以使用:
javac -d . *.java
d
后面的“.
”表示当前位置。