Как использовать пакет dotnet, как передать переменную в файл nuspec?
Я пытаюсь передать версию.Вот nuspec:
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<!-- Required elements-->
<id>1</id>
<version>$PackageVersion$</version>
<description>1</description>
<authors>1</authors>
</metadata>
</package>
А вот моя команда:
dotnet.exe pack /p:NuspecFile=./App.Nuspec /p:PackageVersion=9.7.28170
Я получаю сообщение об ошибке: Значение не может быть нулевым или пустой строкой.
Интересно, если я изменю переменную на описание:
<version>1.1.0</version>
<description>$PackageVersion$</description>
Я получаю сообщение об ошибке: Требуется описание.
Когда тег является описанием, имя тега появляется в сообщении об ошибке.Однако, когда тег является версией, в сообщении об ошибке нет имени тега - только значение термина.Оба поля являются обязательными.
Я делаю это с помощью командной строки на моем локальном компьютере, но сборка TFS выдает ту же ошибку.Вот подсказка TFS для дополнительных свойств сборки для этого шага. Указывает список пар токен = значение, разделенных точками с запятой, где каждое вхождение $ token $ в файле .nuspec будет заменено на указанное значение.Значения могут быть строками в кавычках.
Звучит так, будто я следую этим правилам.И вот что генерирует TFS:
Пакет "C: \ Program Files \ dotnet \ dotnet.exe" D: \ Agent_work \ 5 \ s \ MyProject \ MyProject.csproj --output D: \Agent_work \ 5 \ a /p:NuspecFile=App.nuspec /p:PackageVersion=9.7.28170 --verbosity Normal
То же, что и моя команда.
Что я делаю неправильно