2011-10-19 49 views

回答

1

是的,這是可能的。

<target name="test_java"> 
    <java classname="Test"> 
     <classpath> 
      <pathelement path="${cpath}"/> 
     </classpath> 
    </java> 
</target> 

Test類源代碼:

公共類測試{

public static void main(String[] args) { 
    int a = 2; 

    System.out.println(String.valueOf(a/0)); 
} 

}

輸出:

test_java:
異常在線程 「主」 java.lang.ArithmeticException:/由零
在Test.main(Test.java:7)的Java
結果:1

1

我假設你正在使用該任務來做到這一點?如果是這樣,您可以將stderr重定向到具有errorproperty屬性的屬性,然後將該屬性包含在消息中的任務中。你必須有failonerror =「false」,並有其他一些檢測錯誤的方法(可能是基於進程狀態碼)。

0

隨着上述答案所有尊重。我想我有一個更簡單的解決方案。在運行ant腳本時,如果我們最終調用帶-d選項的命令,它還會顯示更多信息以及java類的失敗原因。

因此,該命令是:

螞蟻filename.xml中-d

乾杯!