27

我正在尝试从构建服务器上的命令行使用 NuGet 包还原。

nuget install myapp/packages.config

但是,我收到以下错误消息:

默认情况下禁用包还原。要给予同意,请打开 Visual Studio 选项对话框。

如果不在构建服务器安装 VS2010,我应该怎么做?(不,我不这样做)。有没有注册表设置之类的?NuGet 如何确定包还原已禁用。确实,为什么他们甚至会关心默认禁用此功能?

4

4 回答 4

28

另一种方法是添加

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

到文件 %USERPROFILE%\AppData\Roaming\NuGet\nuget.config。

于 2013-10-05T05:53:48.467 回答
20

目前正在发生这种情况,因为 NuGet 包还原需要在下载包之前获得同意,并且按照当前的工作方式,无法识别从包还原中调用“nuget.exe install packages.config”的用户。有关同意的更多详细信息:http: //blog.nuget.org/20120518/package-restore-and-consent.html

注意:这个问题应该在下周修复。

作为一种解决方法,您可以通过将 EnableNuGetPackageRestore 环境变量设置为 true 来表示同意。

于 2012-08-10T16:57:43.260 回答
1

我今天有一个。

在 Visual Studio 2013 中检查了选项,但仍然收到错误消息。设置环境变量的解决方法有效,您应该在添加环境变量后重新启动 Visual Studio

于 2014-01-16T21:14:51.063 回答
0

如果您使用的是旧版本的 Visual Studio,请检查更新 NuGet。这对我有用。

于 2013-09-25T14:56:33.987 回答