本文概述
Ant Javac任务用于编译Java源文件。它扫描源目录和目标目录以编译源文件。仅当.class不存在或.class早于Java文件时才编译。
如果Java源文件位于任何软件包中,则源文件应具有目录层次结构。
Apache Ant Javac属性
属性 | 描述 | 需要 |
---|---|---|
srcdir | 源Java文件。 | 是 |
destdir | 存储类文件的目标。 | 没有 |
includes | 必须包括的文件模式列表。 | 没有 |
includesfile | 该文件的每一行均被视为包含模式。 | 没有 |
excludes | 必须排除的文件模式列表。 | 没有;默认为默认排除, 如果defaultexcludes为否, 则默认为无 |
excludesfile | 此文件的每一行均被视为排除模式。 | 没有 |
classpath | 要使用的类路径。 | 没有 |
bootclasspath | 引导程序类文件的路径。 | 没有 |
extdirs | 已安装扩展的路径。 | 没有 |
encoding | 源文件的编码。 | 没有 |
nowarn | 它用于将-nowarn开关传递给编译器。 | 没有 |
debug | 在编译过程中调试文件。 | 没有 |
debuglevel | 设置调试文件级别。 | 没有 |
optimize | 指示是否应优化编译源。 | 没有 |
deprecation | 使用弃用信息进行编译。 | 没有 |
verbose | 要求编译器提供详细的输出。 | 没有 |
depend | 为支持它的编译器启用依赖项跟踪。 | 没有 |
includeAntRuntime | 是否在类路径中包含Ant运行时库。 | 没有 |
fork | 是否在外部使用JDK编译器执行javac。 | 没有 |
executable | javac可执行文件的完整路径。 | 没有 |
memoryInitialSize | 设置初始内存大小。 | 没有 |
memoryMaximumSize | 基础JVM的最大内存大小。 | 没有 |
Apache Ant Javac示例
以下代码编译Java源文件并将类文件存储到目标目录中。
// build.xml
<project name="java-ant project" default="compile">
<target name="compile">
<javac includeantruntime="false" srcdir="./src" destdir = "test"></javac>
</target>
</project>
示例:将调试模式设置为true
本示例将编译位于srcdir中的所有Java源文件,并将.class存储到destdir目录中。因为打开了调试模式,它将以调试模式编译Java源代码。
<project name="java-ant project" default="run">
<target name="run">
<javac srcdir="${src}" destdir="${build}"
classpath="xyz.jar" debug="on" source="1.4"/>
</target>
</project>
示例:设置源级别和目标版本
本示例将编译位于srcdir中的所有Java源文件,并将.class存储到destdir目录中。源级别为1.8,.class文件将在Jdk 1.8下运行。
<project name="java-ant project" default="run">
<target name="run">
<javac srcdir="${src}" destdir="${build}"
classpath="xyz.jar" fork="true" source="1.8" target="1.8"/>
</target>
</project>
评论前必须登录!
注册