Проблема с передачей аргумента в Ant exec task

#ant

#ant

Вопрос:

Я использую Ant 1.8. Я хочу передать свойство, которое я определяю в своем скрипте, команде exec. Хотя я вижу, что свойство имеет значение в моих echo-операторах, когда я передаю его скрипту и вывожу его значение в скрипте, его значение выводится как «$ {myco.test.root}», без преобразования. Как правильно передать значение свойства скрипту? Ниже приведен соответствующий код из моего build.xml файл …

 <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>
  

Спасибо, — Дэйв

Ответ №1:

На мой взгляд, это действительно выглядит неплохо. Попробуйте запустить build.xml с включенными в Ant параметрами verbose и debug:

 ant -d -v checkout-selenium-tests
  

Это поможет отследить, откуда могла возникнуть ошибка.