2014-04-24 121 views

回答

1

該答案特定於運行nuget install packages.config

指定packages.config時,只安裝明確列出的軟件包。

但是,如果您嘗試安裝特定軟件包:nuget install My.Package.Id,那麼NuGet將安裝軟件包和任何依賴項。

編輯關於爲什麼有區別的附加信息。

nuget install實際上應該叫做nuget download。它不是真正的安裝在傳統意義上。也就是說,它不會添加對項目文件的引用,它不運行install.ps1,它不會更新packages.config等您需要使用NuGet GUI或Package Manager控制檯得到一個true安裝。

由於true安裝更新packages.config,此文件已包含所有已安裝的依賴關係。所以指定文件意味着,我想下載這些特定的軟件包。 NuGet不需要考慮它,因爲它基本上是預先計算的

如果你想安裝/下載多個軟件包並可的NuGet遵循依賴關係,只需創建一個批處理文件,併發出多個命令:

nuget install My.Package.Id 
nuget install Another.Package.Id 

這將導致的NuGet來獲取包的任何依賴它可能有。

希望澄清一些事情。

+0

爲避免混淆,您可能需要指出命令行支持依賴項安裝,所以感謝您的輸入。我仍然試圖理解爲什麼(從我的角度來看)有意限制這種工具。 –

+0

我更新了我的答案和其他信息。 – Kiliman

+0

謝謝,這說得很清楚。 –