Chcę użyć nuget.exe (wersja 2.5) w moim kompilacji budowania CI, aby zainstalować pakiet, który jest zależny od innego pakietu.przy użyciu wiersza polecenia nuget.exe do zainstalowania zależności
Mam następujące pliki 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>
i podobny do B. i moim pliku packages.config której użyłem do instalacji to:
<packages>
<package id="A" version="1.0.0.1" allowedVersions="[1,2)"/>
</packages>
i uruchomić następujące polecenie:
NuGet.exe install packages.config -ExcludeVersion -Outputdir libs -source http://get.nuget.mydomain
dostaję komunikat:
Successfully installed 'A 1.0.0.1'.
, ale nie zainstaluj mojej zależności B.
Ale jeśli umieścisz B osobno w pliku packages.config, otrzymam instalację A i B. Spodziewałem się, że B zostanie zainstalowane, gdy instalujemy A, ponieważ jest to zależność A. Nie umieszczamy bibliotek dll w GAC (więc uważam, że rozwiązywanie zależności nie powinno stanowić problemu). Również otworzyłem A.nupkg i sprawdziłem, że jest ma tam wymienioną zależność. Również gdy instaluję A z w edytorze Visual Studio B, instaluje się również. (Co powinno się stać).
Jak używać nuget.exe i instalować zależność B, gdy instaluję tylko A (umieść A tylko w packages.config).
dziękuję
I utworzyłem problem na nuget.codeplex.com, który nie jest twoim dokładnym problemem, ale też rozwiązałby go, używając nieco innego workflow: https://nuget.codeplex.com/workitem/4258 – theDmi