【问题标题】:NuGet exited with code -1 — Build failing as a resultNuGet 以代码 -1 退出 - 结果构建失败
【发布时间】:2012-06-22 08:48:57
【问题描述】:

我已经通过 VS2012 中的包管理器将 dotless 安装到现有的混合 C# 解决方案(类库和 MVC2 应用程序)中,但是现在当我构建它时 (F5) 我收到以下两个错误:

命令 ""C:\@GitRepos\EBS\SolutionFiles\.nuget\nuget.exe" 安装 "C:\@GitRepos\EBS\\packages.config" -source "" -o "C:\@GitRepos\EBS\SolutionFiles\packages"" 以代码 -1 退出。

系统找不到指定的路径。

在解决方案中添加 dotless 后,添加了带有“NuGet.exe 和”NuGet.targets”的“.nuget”文件夹。

我还尝试将 dotless 添加到新的 MVC2 项目中,除了必须将 mime 类型添加到 web.config 之外,它都运行良好。但是没有“.nuget”文件夹。

我还注意到,如果我创建一个新的 NServiceBus 解决方案(安装后),也会发生同样的情况。消息中的路径改变了,但错误是一样的。

如果我接受

"C:\@GitRepos\EBS\SolutionFiles\.nuget\nuget.exe" 安装 "C:\@GitRepos\EBS\\packages.config" -source "" -o "C:\@GitRepos\EBS\SolutionFiles\packages"

并通过命令提示符运行它,然后我得到:

packages.config 中列出的所有包都已安装。

【问题讨论】:

  • 所以在放弃这个然后几天后再次查看它之后,我找到了答案。我遇到了david-martos.blogspot.co.uk。打开我的命令提示符并发现它还说“系统找不到指定的路径”后,我去注册表中查找。我在“HKEY_CURRENT_USER\Software\Microsoft\Command Processor”中发现“c:\ansi140\x64\ansicon.exe -p”有一个 AutoRun 键。删除它并再次尝试我的 NserviceBus 解决方案之一后,我发现它构建得很好。我希望这对其他人有所帮助。
  • 你应该发布这个作为答案,它对我有帮助,我永远猜不到自己会这样看。

标签: c# asp.net-mvc-2 build nuget dotless


【解决方案1】:

所以在放弃这个之后,几天后再次查看它,我找到了答案。我遇到了 david-martos.blogspot.co.uk。在打开我的命令提示符并发现它还说"The system cannot find the path specified" 后,我去注册表中查找。我在"HKEY_CURRENT_USER\Software\Microsoft\Command Processor" 中发现"c:\ansi140\x64\ansicon.exe -p " 有一个自动运行键。删除它并再次尝试我的 NserviceBus 解决方案之一后,我发现它构建得很好。我希望这对其他人有所帮助。

这是David Martos post的直接链接。

【讨论】:

  • 非常感谢! Ansicon 是纯粹的邪恶。
  • 我正在使用 conemu/cmdr 控制台模拟器,它劫持了相同的注册表项,导致我出现问题。
  • 对我来说关键位与博客不同,上面指出的是 reg 键“HKEY_CURRENT_USER”的位置,博客将您指向本地计算机,因此根据您的设置查看这两个位置。
  • 我删除了 ansicon,因为 cmder 在抱怨,我认为我不需要它。经过两天试图弄清楚这一点,我找到了这个页面。谢谢.....
  • 是的,我有一个 ansicon,因为我已经安装了它。但是我在VS中有同样的问题。我删除了密钥 AutoRun,但这对我不起作用 =(
【解决方案2】:

这也可能是您必须设置的 nuget 包恢复同意。 http://blog.nuget.org/20120518/package-restore-and-consent.html

对于想要永久接受同意的任何人,请查看安装http://nuget.org/packages/NuGetEnablePackageRestore - 它会自动在所有机器上被接受。

【讨论】:

    【解决方案3】:

    我通过打开包管理器控制台并在弹出的警告上单击“恢复”按钮解决了这个问题。这是它的外观。这与其他解决方案类似,但角度不同。

    【讨论】:

    • 我也让 NuGet 莫名其妙地失败了。我在解决方案中为一个随机项目打开了“管理 NuGet 包”,单击弹出窗口中的“恢复”按钮,然后一切正常。
    【解决方案4】:

    只需从 NuGet 包管理器控制台执行以下命令。它对我有用:

    PM> Install-Package NuGetEnablePackageRestore
    

    【讨论】:

      【解决方案5】:

      我有同样的错误:

      “命令“”以代码 -1 退出。”和“系统找不到指定的路径。”

      我测试了我找到的所有可能的解决方案,但没有任何效果,最后我所做的是从另一个项目中获取 NuGet.exe,并将其替换到 .nuget 文件夹内的项目中,该文件夹正在生成错误并且正在运行.

      【讨论】:

        【解决方案6】:

        对我来说,我不小心从项目目录的根目录中删除了 NuGet.Config 文件。幸运的是,我可以使用源代码控制来恢复它。

        如果有人和我犯了同样的错误并且没有备份,这是我文件的内容:

        <?xml version="1.0" encoding="utf-8"?>
        <configuration>
          <config>
            <add key="repositorypath" value="NuGet Packages" />
            <add key="globalPackagesFolder" value="NuGet Packages" />
          </config>  
          <packageRestore>
            <add key="enabled" value="True" />
          </packageRestore>  
        </configuration>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-09-15
          • 1970-01-01
          • 2019-05-02
          • 2017-10-20
          • 1970-01-01
          相关资源
          最近更新 更多