Использование xmlpeek в скрипте Nant дает нечетную ошибку

В рамках процесса CI я пытаюсь создать метку сборки, состоящую из содержимого элемента xml внутри структуры xml. Для этого я использую nant и xmlpeek. Моя проблема заключается в том, что я получаю странную ошибку:

«Nodeindex '0' is out of range»

Это только в том случае, если xml-файл, который я xmlpeeking, содержит определение пространства имен в корневом узле.

Удаление пространства имен из XML-файла дает ожидаемый результат.

Цель nant, которая генерирует ошибку, может быть сведена к:

    <target name="TDSLabel">
            <property name="element" value=""/>
            <echo message="Getting element" />
            <xmlpeek file="C:\xxx\test1.xml" xpath="//Project/PropertyGroup/ProductVersion" property="element"/>
            <echo message="The found element value was: ${element}" />
    </target>

и файл test1.xml выглядит следующим образом:

<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
        <ProductVersion>9.0.21022</ProductVersion>
    </PropertyGroup>
</Project>
6
задан VilladsR 20 March 2012 в 20:05
поделиться