2016-04-27 3 views
0

Ich bin dabei, unsere Bibliotheksprojekte in einen privaten NuGet-Feed zu stellen, und ich habe festgestellt, dass die Bibliotheken eine Unmenge von Abhängigkeiten voneinander haben. Es wird wahrscheinlich ein wenig auf die Straße kommen, aber im Moment habe ich die Aufgabe, sie in NuGet zu bringen, wie es ist, und ich bin mir nicht sicher, was die beste Vorgehensweise für Abhängigkeiten ist.nuget Abhängigkeiten von Abhängigkeiten

Zum Beispiel:

Bibliothek B braucht Bibliothek A.
Bibliothek D-Bibliothek C und B. benötigt
Bibliothek E-Bibliothek benötigt D.

Nun, wenn ich NuGet Pakete verwalten verwenden nach unten ziehen Bibliothek E, es wird offensichtlich den ganzen Abhängigkeitsbaum entdecken und die Bibliotheken A bis D herunterziehen.

Die Frage ist, in der .nuspec-Datei für Bibliothek E, welche Abhängigkeiten sollte ich auflisten? Soll ich nur Bibliothek D auflisten und NuGet diesen Baum betreten lassen und alles herausfinden, wenn jemand ihn ergreift? Oder sollte es die Libraries A bis D auflisten, da sie alle in der packages.config angezeigt werden und Sie am Ende alle ziehen?

Antwort

0

Es wird die Abhängigkeitsbaumstruktur durchlaufen, um alle erforderlichen Pakete zu finden. Ich habe 3 tiefe gebaut.

Ich würde denken, dass es am besten wäre, dies durch Design zu ermöglichen, weil Sie wollen, dass diese Pakete unabhängig sind und dlls nicht direkt konsumieren, da dies andere Konflikte verursachen und den Zweck von NuGet zunichte machen würde.

Ich habe mit https://docs.nuget.org/ndocs/consume-packages/dependency-resolution#cousin-dependencies und https://docs.nuget.org/ndocs/create-packages/dependency-versions als Referenz für diese.