У меня есть следующие определения after_build
в моем appveyor.yml
:
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>
На самом деле, project_name заменено жестко заданным значением для простоты — пока нет внедрения
-properties
. Во-вторых, любые элементы, связанные с проектом, такие какdescription
иauthors
, были опущены, чтобы обеспечить нейтральный вопрос, несмотря на то, что они обязательны для фактической упаковки.
project_file
успешно упакован:
Попытка сборки пакета из «Caliburn.Micro.Contrib.Controller.csproj».
Автоматическое определение MSBuild: использование версии msbuild «14.0» из «C:\Program Files (x86)\MSBuild\14.0\bin».< br> Упаковка файлов из 'C:\projects\dotnet-caliburn-micro-contrib-controller\src\Caliburn.Micro.Contrib.Controller\bin\Release'.
Использование 'Caliburn.Micro.Contrib.Controller.nuspec ' для метаданных.
Найдено packages.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' для метаданных.
Найдено packages.config. Использование пакетов, перечисленных как зависимости
Версии, использующие SemVer 2.0.0, не поддерживаются: 0.1.0-unstable.68+Branch.develop.Sha.7f85e35f315f7fe3ecd35762b65802e5467a57c2.
Я даже не уверен, что эта функция (замена токена в <dependencies>
) реально доступна.
Если нет, то как еще я могу упаковать два .csproj
-файла в два отдельных .nupkg
-файла, где один зависит от другого с определенной версией (той же версией, что и пакет для сборки)?