Я хочу использовать nuget.exe (версия 2.5) в моем конвейере сборки CI для установки пакета, который зависит от другого пакета.
У меня есть следующий файл nuspec.
<?xml version="1.0"?>
<package>
<metadata>
<id>A</id>
<dependencies>
<dependency id="B" version="1.0.0.1" />
</dependencies>
</metadata>
<files>
<file src="A.dll" target="lib" />
</files>
</package>
и аналогично для B. и мой файл packages.config, который я использовал для установки:
<packages>
<package id="A" version="1.0.0.1" allowedVersions="[1,2)"/>
</packages>
и я запускаю следующую команду:
NuGet.exe install packages.config -ExcludeVersion -Outputdir libs -source http://get.nuget.mydomain
Я получаю вывод:
Successfully installed 'A 1.0.0.1'.
но не устанавливайте мою зависимость B.
Но если поместить B отдельно в файл packages.config, я установлю и A, и B. Я ожидал, что B будет установлен при установке A, поскольку он зависит от A. Мы не помещаем dll в GAC (поэтому я считаю, что разрешение зависимостей не должно быть проблемой). Также я открыл A.nupkg и проверил, что он имеет зависимость указана там. Также, когда я устанавливаю A из редактора Visual Studio, B также устанавливается (что и должно произойти).
Как использовать nuget.exe и установить зависимость B, когда я устанавливаю только A (поместите A только в packages.config).
спасибо