Ant Javac任務用於編譯Java原始檔。 它掃描源和目標目錄以編譯原始檔,只在.class
不存在或.class
比Java檔案舊時才編譯。
如果Java原始檔位於任何包中,則原始檔應具有目錄層次結構。
屬性 | 描述 | 必需 |
---|---|---|
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的最大記憶體大小 | 否 |
以下程式碼編譯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>