2011-07-28 112 views
2

我有一個退出Ant構建通過ant -lib lib -f test_build.xml如何從ant構建運行ruby腳本作爲任務?

我想補充一個<target>部分已有一個完成後運行時調用。我做了一些研究,發現在SO上有ant manual for exec甚至a question。在讀完一些資料之後,我爲這個現有的版本添加了新的目標,但它沒有奏效。

我試圖只用我的目標創建新的構建文件。它也不起作用。雖然螞蟻運行完成消息BUILD SUCCESSFUL Total time: 0 seconds

如果我從命令行運行我的ruby腳本它的作品。我試圖創建bat文件,它會調用我的ruby腳本,並得到相同的結果。如果我從dos窗口調用bat文件,它就可以工作。

我的Ant構建運行文件看起來像

<project name="RunRubyExample"> 

<target name="calling ruby " > 
    <exec executable="ruby.exe"> 
    <arg value="C:\EduTester\others\afterant.rb 1 2 tri four"/> 
    </exec> 
</target> 

<target name="calling batach"> 
    <exec executable="cmd"> 
    <arg value="/c"/> 
    <arg value="C:\EduTester\others\rubruby.bat 1 2 tri four"/> 
    </exec> 
</target> 

</project> 
  • Apache Ant的在Windows XP上編譯二零一零年十二月二十〇日
  • (TM)版本1.8.2

回答

2

它看起來像你'通過單個參數與嵌入空間

<arg value="C:\EduTester\others\afterant.rb 1 2 tri four"/> 

對嗎?或者它應該是要麼一個ARG

<arg line="C:\EduTester\others\afterant.rb 1 2 tri four"/> 

或多個ARG值:

<arg value="C:\EduTester\others\afterant.rb"/> 
<arg value="1"/> 
<arg value="2"/> 
<arg value="tri"/> 
<arg value="four"/> 
+0

我都嘗試'line'並用空格成多個參數線的線條。沒有工作。我只得到'建立成功'。有沒有任何方法可以調試螞蟻運行? – Radek

+1

「Radek - 你可以嘗試一下'ant-debug',接下來是其他參數,還可以查看['exec' task]的failonerror,errorproperty,outputproperty屬性(http://ant.apache.org/manual /Tasks/exec.html) - 可能能夠捕獲更多的信息 –

+0

debug和failonerror沒有提供任何新的信息我不知道如何使用其他的'errorproperty,outputproperty'。有沒有如何找出ant是否運行exec中指定的內容? – Radek

0

需要有指定的目標,需要運行

  • 無論是<project name="RunRubyExample" default="callingruby">
  • 或調用ant構建文件時。我們通過目標名稱的位置,我們希望作爲參數運行。 ant -lib lib callingruby

Writing a Simple Buildfile

謝謝@Steve