簡體   English   中英

Visual Studio 2017 Nuget 安裝包構建項目而不是安裝/卸載包

[英]Visual Studio 2017 Nuget Install Package Builds Project Instead of Installing / Uninstalling Packages

將現有庫項目導入現有解決方案時(在我從其他地方將它們復制到本地之后),當我嘗試通過包管理器安裝或卸載 Nuget 包時,它只是構建我的解決方案,顯示我遇到的所有錯誤,因為未安裝包。 它不會嘗試安裝或卸載軟件包。 為什么要構建我的項目而不是安裝/卸載血腥包?

為什么要構建我的項目而不是安裝/卸載血腥包?

這不是 VS IDE 本身的默認行為。

對於 VS2017,如果我們使用Package Manager UI安裝一個普通包,VS 會檢查要消費的包與當前項目的兼容性。 如果它們兼容,則該軟件包將成功安裝,否則,VS 將在ErrorList window拋出NU1202其他類似的NU1202錯誤。

在此處輸入圖片說明

但我確定對於 VS2017,安裝/卸載不會調用構建。

問題的可能原因及相應建議:

1.此行為由一個第三方擴展引起

Reset all VS settings => disable all the third-party extensions => restart VS以檢查問題是否仍然存在。 如果在檢查后發現此問題是由一個擴展引起的,則需要確定該擴展是否提供打開/關閉自動構建的選項。 或者您可能需要暫時禁用/卸載擴展並聯系擴展的作者以發布問題。

您可能會從這個類似的問題中獲得更多有關故障排除的詳細信息。

2.來自一個特定 nuget 包的自定義腳本(.ps1,.targets) 導致了這一點。

作者可以在生成包時將powershell腳本和PackageID.targets放在.nupkg中。 其中一些腳本將在我們安裝包時執行,其他腳本將在我們卸載包時執行。 在這里看到類似的問題。

您可以在TestProject解決方案中創建一個新的簡單控制台項目TestProject 然后right-click solution=>add=>Existing project以導入新的外部項目。 現在讓我們安裝Newtonsoft.Json包來檢查問題是否消失。 如果問題在Newtonsoft.Json包的新項目中消失。 我認為這表明您嘗試安裝/卸載的一個特殊軟件包可能會導致問題。

希望以上所有內容對您有所幫助,如果有任何更新,請隨時告訴我。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM