閱讀英文

共用方式為


NuGet 2.0 版本資訊

NuGet 1.8 版本資訊 | NuGet 2.1 版本資訊

NuGet 2.0 於 2012 年 6 月 19 日發行。

已知安裝問題

如果您執行 VS 2010 SP1,如果您在嘗試升級 NuGet 時遇到安裝錯誤,如果您已安裝舊版。

因應措施是直接卸載 NuGet,然後從 VS 擴充功能庫安裝。 如需詳細資訊,請參閱 https://support.microsoft.com/kb/2581019 ,或 直接移至 VS Hotfix

注意:如果 Visual Studio 不允許卸載擴充功能(已停用 [卸載] 按鈕),則您可能需要使用[以 管理員 istrator 執行身分執行] 來重新啟動 Visual Studio。

如套件還原同意的本文所述,NuGet 2.0 現在會要求同意,才能讓套件還原上線並下載套件。 請確定您已透過套件管理員組態對話框或 EnableNuGetPackageRestore 環境變數提供同意。

依目標架構分組相依性

從 2.0 版開始,套件相依性可能會根據目標專案的架構配置檔而有所不同。 這是使用更新 .nuspec 的架構來完成的。 元素 <dependencies> 現在可以包含一組 <group> 專案。 每個群組都包含零個或多個 <dependency> 項目和 targetFramework 屬性。 如果目標架構與目標專案架構配置檔相容,群組內的所有相依性都會一起安裝。 例如:

<dependencies>
    <group>
        <dependency id="RouteMagic" version="1.1.0" />
    </group>

    <group targetFramework="net40">
        <dependency id="jQuery" />
        <dependency id="WebActivator" />
    </group>

    <group targetFramework="sl30">
    </group>
</dependencies>

請注意,群組可以包含 相依性。 在上述範例中,如果套件已安裝至以 Silverlight 3.0 或更新版本為目標的專案,則不會安裝任何相依性。 如果套件安裝到以 .NET 4.0 或更新版本為目標的專案,將會安裝兩個相依性 jQuery 和 WebActivator。 如果套件安裝到以這 2 個架構的早期版本為目標的專案,則將會安裝 RouteMagic 1.1.0。 群組之間沒有繼承。 如果專案的目標架構符合 targetFramework 群組的 屬性,則只會安裝該群組內的相依性。

封裝可以使用兩種格式之一來指定套件相依性:一般項目清單或群組的 <dependency> 舊格式。 <group>如果使用格式,則套件無法安裝到 2.0 之前的 NuGet 版本。

請注意,不允許混合這兩種格式。 例如,下列代碼段無效,NuGet 將會拒絕。

<dependencies>
    <dependency id="jQuery" />
    <dependency id="WebActivator" />

    <group>
        <dependency id="RouteMagic" version="1.1.0" />
    </group>
</dependencies>

依目標架構分組內容檔案和 PowerShell 腳本

除了元件參考之外,內容檔和PowerShell腳本也可以依目標架構分組。 在指定目標架構的資料夾中找到lib的相同資料夾結構,現在可以以與和資料 tools 夾相同的方式content套用。 例如:

\content
    \net11
        \MyContent.txt
    \net20
        \MyContent20.txt
    \net40
    \sl40
        \MySilverlightContent.html

\tools
    \init.ps1
    \net40
        \install.ps1
        \uninstall.ps1
    \sl40
        \install.ps1
        \uninstall.ps1

注意:因為 init.ps1 是在方案層級執行,而且不相依於任何個別專案,所以它必須直接放在資料夾底 tools 下。 如果放在架構特定資料夾內,則會忽略它。

此外,NuGet 2.0 的新功能是架構資料夾可以是 的,在此情況下,NuGet 不會新增元件參考、新增內容檔案或針對特定架構版本執行 PowerShell 腳本。 在上述範例中,資料夾 content\net40 是空的。

改善的索引標籤完成效能

NuGet 封裝管理員 控制台中的索引標籤自動完成功能已更新,可大幅改善效能。 從按下索引標籤鍵到建議下拉式清單出現的時間,延遲會少得多。

錯誤修正

NuGet 2.0 包含許多錯誤修正,強調套件還原同意和效能。 如需 NuGet 2.0 中修正的工作專案完整清單,請檢視 [NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%202.0&assignedTo=All&component=All&sortField=Votes&sortDirection=Descending&page=0)