用-D

2012-03-31 38 views
1
設置一個ant選項

假設我有這個需要一個字符串並打印它的螞蟻任務。用-D

public class MyTask extends Task 
{ 
    private String msg; 

    // method executing the task 
    public void execute() throws BuildException 
    { 
      System.out.println(msg); 
    } 

    public void setMessage (String msg) 
    { 
      this.msg = msg; 
    } 
} 

我應該如何編寫我的構建文件以將字符串參數傳遞給它?

(說我想這樣做ant mytask -Dmessage=print_this_message

感謝

回答

1

您需要在構建文件中聲明的任務,並通過屬性值作爲屬性

<taskdef .... 

<mytask message="${message}"/> 

更新

設置任務字符串的默認值只是初始化消息私有變量

public class MyTask extends Task 
{ 
    private String msg = "hello world"; 

    public void execute() throws BuildException 
    { 
      System.out.println(msg); 
    } 

    public void setMessage (String msg) 
    { 
      this.msg = msg; 
    } 
} 
+0

謝謝。這工作。但是如果我想明確指定默認值是什麼,如果有人沒有指定它呢? – user113454 2012-03-31 20:10:16

+0

@ user1064918。消息的默認值可以在自定義ANT任務中設置。我已經更新了答案 – 2012-04-01 09:09:17

相關問題