2012-08-10 72 views
25

我試圖使用NuGet包從構建服務器的命令行恢復。NuGet包還原 - 「包恢復默認情況下禁用給予同意,打開Visual Studio的選項對話框。」

nuget install myapp/packages.config 

不過,我得到了以下錯誤消息:

包還原默認情況下禁用。爲了表示同意,請打開Visual Studio選項對話框。

我該怎麼做,沒有安裝VS2010 構建服務器? (不,我沒有那樣做)。有沒有註冊表設置或什麼的? NuGet如何確定軟件包恢復已被禁用。事實上,爲什麼他們甚至會在意默認禁用的功能呢?

回答

19

這是目前發生的事情,因爲NuGet包下載包進行恢復之前,需要同意,並與當前的方式工作上的事情,有沒有辦法辨別用戶呼叫恢復從包「nuget.exe安裝packages.config」。 關於同意的更多細節請看:http://blog.nuget.org/20120518/package-restore-and-consent.html

注意:這個問題應該下週要修復。

作爲一種變通方法,您可以通過EnableNuGetPackageRestore環境變量設置爲true給予同意。

+2

出於某種原因,運行後,你應該重新啓動Visual Studio'設置EnableNuGetPackageRestore = TRUE;在命令行(Windows 7)中沒有工作,但在設置控制面板的環境變量 - >高級系統設置。那些想知道在環境變量的情況下哪個值是「真實的」,對於我'1'和'true'起作用。 – 2013-04-12 14:12:35

+0

@EmperorOrionii您是否在構建服務器上執行此操作? – 2013-10-01 18:55:28

+0

@MikeMarks ???是的,不,也許不適用。我沒有構建服務器,項目是一種愛好。 – 2013-10-04 14:26:34

0

檢查,如果你使用的是舊版本的Visual Studio更新的NuGet。這對我有效。

+0

是的,你會注意到,有人問早在2012年 – 2013-10-05 12:13:11

27

另一種方法是增加

<packageRestore> 
    <add key="enabled" value="True" /> 
    <add key="automatic" value="True" /> 
</packageRestore> 

到文件%USERPROFILE%\應用程序數據\漫遊\的NuGet \ nuget.config。

+1

我包恢復我的工具>選項>的NuGet PM設置啓用,但仍然得到了錯誤的解決方案。我添加了這些行(在根配置元素下)並解決了這個問題。 – Todd 2014-07-03 17:47:39

+0

如果您的配置爲空(例如:),則應添加結束標記,以使其變爲: ... LRMAAX 2017-03-13 19:43:10

1

我今天有一個。

有選項在Visual Studio 2013檢查,但仍然得到了錯誤的信息。 解決方法來設置環境變量工作,將環境變量

相關問題