я следующие after_build
определения в моем appveyor.yml
:Как я могу ссылаться на проект как на зависимость пакета с определенной версией в AppVeyor и GitVersion?
after_build:
- cmd: nuget pack "%project_file%" -properties "Configuration=%configuration%" -version "%GitVersion_NuGetVersion%" -symbols
- cmd: nuget pack "%extras_project_file%" -properties "Configuration=%configuration%" -version "%GitVersion_NuGetVersion%" -symbols
Теперь у меня есть эти два .proj
-файлы, которые содержат соответствующий .nuspec
-файл:
<?xml version="1.0"?>
<package >
<metadata>
<id>$id$</id>
<version>$version$</version>
<authors>$author$</authors>
</metadata>
</package>
Наконец, у меня есть немного дополнение для extras_project_file
:
<?xml version="1.0"?>
<package >
<metadata>
<id>$id$</id>
<version>$version$</version>
<authors>$author$</authors>
<dependencies>
<dependency id="***project_name***" version="$version$" />
</dependencies>
</metadata>
</package>
На самом деле, имя_проекта заменено на жестко запрограммированное значение для простоты - без впрыска с
-properties
. Во-вторых, любые связанные с проектом элементы, такие какdescription
иauthors
, были опущены для обеспечения нейтрального вопроса, несмотря на то, что они являются обязательными для фактической упаковки.
project_file
упаковано успешно:
Попытка построить пакет из 'Caliburn.Micro.Contrib.Controller.csproj'.
Автоматическое обнаружение MSBuild: с помощью msbuild версии '14 .0 'из' C: \ Program Files (x86) \ MSBuild \ 14.0 \ bin '.
Упаковка файлов из 'C: \ projects \ dotnet-caliburn-micro-contrib-controller \ src \ Caliburn.Micro.Contrib.Controller \ bin \ Release'.
Использование «Caliburn.Micro.Contrib.Controller.nuspec» для метаданных.
Найдено пакетов.config. Использование пакетов, перечисленных в качестве зависимостей
Успешно создан пакет 'C: \ projects \ dotnet-caliburn-micro-contrib-controller \ Caliburn.Micro.Contrib.Controller.0.1.0-unstable0068.nupkg'.
В то время как extras_project_file
терпит неудачу:
Попытка построить пакет из 'Caliburn.Micro.Contrib.Controller.Extras.csproj'.
Автоматическое обнаружение MSBuild: с помощью msbuild версии '14 .0 'из' C: \ Program Files (x86) \ MSBuild \ 14.0 \ bin '.
Упаковка файлов из 'C: \ projects \ dotnet-caliburn-micro-contrib-controller \ src \ Caliburn.Micro.Contrib.Controller.Extras \ bin \ Release'.
Использование «Caliburn.Micro.Contrib.Controller.Extras.nuspec» для метаданных.
Найдено пакетов.config. Использование пакетов, перечисленных в качестве зависимостей
Версии с использованием SemVer 2.0.0 не поддерживаются: 0.1.0-unstable.68 + Branch.develop.Sha.7f85e35f315f7fe3ecd35762b65802e5467a57c2.
Я даже не уверен, что эта функция (маркер замены в <dependencies>
) на самом деле имеется.
Если нет, то как еще я могу упаковать два файла .csproj
в два отдельных файла .nupkg
, где есть зависимость от другой версии с той или иной версией (той же версией, что и для сборки)?