2011-05-24 89 views
2

我正在使用Ant 1.8。我想将我在脚本中定义的属性传递给exec命令。虽然我可以看到属性在我的echo语句中有一个值,但是当我将它传递给脚本并在脚本中输出其值时,它的值会打印为“$ {myco.test.root}”,而不会被转换。将属性值传递给脚本的正确方法是什么?下面是我的build.xml文件的相关代码...将参数传递给Ant exec任务时遇到麻烦

<target name="checkout-selenium-tests" depends="set-critical-path-test-suite,set-default-test-suite,check-local-folders-exist"> 
<echo message=" test root ${myco.test.root}" /> 
<stcheckout servername="${st.servername}" 
    serverport="${st.serverport}" 
      projectname="${st.myco.project}" 
      viewname="${st.myco.viewname}" 
      username="${st.username}" 
      password="${st.password}" 
      rootstarteamfolder="${myco.starteam.test.root}" 
      rootlocalfolder="${myco.test.root}" 
      forced="true" 
      deleteuncontrolled="true" 
    /> 


    <delete file="${myco.testsuite.file}" /> 
    <echo message="test root ${myco.test.root}" /> 
    <exec failonerror="true" executable="perl" dir="${scripts.dir}"> 
      <arg value="generate_test_suite.pl" /> 
      <arg value="My Tests" /> 
      <arg value="${myco.test.root}" /> 
      <arg value="${myco.testsuite.file}" /> 
    </exec> 
</target> 

谢谢 - 戴夫

回答

0

它实际上对我来说很好。尝试运行build.xml既在蚂蚁开启冗长和调试选项:

ant -d -v checkout-selenium-tests 

这将有助于追查下该错误可能是来自何处。