Apache Ant Java任務

此任務用於在Ant JVM中執行Java代碼。還可以通過設置fork屬性true來使用其他(外部)JVM。

要獲取fork JVM的輸入,可以使用input和inputstring屬性。

1. Apache Ant Java任務屬性

屬性

描述

必需

classname

要執行的Java類

classname,jar和module三者之一

jar

Jar文件的位置

classname,jar和module三者之一

module

要解決的主模塊名稱

classname,jar和module三者之一

args

執行的類的參數

否

classpath

要使用的類路徑

否

classpathref

用於路徑引用的類路徑

否

modulepath

它用於指定模塊路徑

否

modulepathref

帶路徑引用的模塊路徑

否

fork

如果啓用,則在另一個JVM中觸發類執行

否

spawn

它用於允許啓動一個比Ant更長的進程

否

jvm

它是用於運行JVM的命令

否

jvmargs

傳遞給JVM的JVM參數

否

maxmemory

分配給分叉JVM的最大內存量

否

failonerror

停止構建過程

否

resultproperty

應存儲命令返回碼的屬性的名稱

否

dir

要包含在運行中的目錄

否

output

輸出文件名

否

error

錯誤文件名

否

logError

要獲取錯誤日誌,請將其存儲到文件中

否

append

是否應附加或覆蓋輸出和錯誤文件

否

outputproperty

應存儲命令輸出的屬性

否

errorproperty

應存儲命令標準錯誤的屬性

否

2. Apache Ant Java任務示例

此示例將運行Java類Hello,參考以下代碼:

<project name="java-ant project" default="run">     
    <target name="run">  
        <java classname = "com.yiibai.Hello">  
            <classpath path="test"></classpath>  
        </java>  
    </target>  
</project>

以最大內存128 MB運行JAR:

<java jar="dist/test.jar"  
      fork="true"  
      failonerror="true"  
      maxmemory="128m">  
  <arg value="-h"/>  
  <classpath>  
    <pathelement location="dist/test.jar"/>  
    <pathelement path="${java.class.path}"/>  
  </classpath>  
</java>