Ant Javac任務

Ant Javac任務用於編譯Java源文件。 它掃描源和目標目錄以編譯源文件,只在.class不存在或.class比Java文件舊時才編譯。

如果Java源文件位於任何包中,則源文件應具有目錄層次結構。

1. Apache Ant Javac屬性

屬性

描述

必需

srcdir

源Java文件

destdir

存儲類文件的目標

includes

必須包含的文件模式列表

includesfile

文件的每一行都被視爲包含模式

excludes

必須排除的文件模式列表

excludesfile

文件的每一行都被視爲排除模式

classpath

要使用的類路徑

bootclasspath

引導類文件的路徑

extdirs

已安裝擴展的路徑

encoding

編碼源文件

nowarn

用於將-nowarn開關傳遞給編譯器

debug

在編譯期間調試文件

debuglevel

設置調試文件的級別

optimize

指示是否應使用優化編譯源

deprecation

與棄用信息一起編譯

verbose

詢問編譯器是否有詳細輸出

depend

爲支持它的編譯器啓用依賴關係跟蹤

includeAntRuntime

是否在類路徑中包含Ant運行時庫

fork

是否在外部使用JDK編譯器執行javac

executable

javac可執行文件的完整路徑

memoryInitialSize

設置初始內存大小

memoryMaximumSize

底層JVM的最大內存大小

2. 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>