【问题标题】:Switch back to packages.config切换回 packages.config
【发布时间】:2017-08-30 14:23:23
【问题描述】:

是否可以切换回packages.config 方案?我在创建项目时移至 PackageReference 方案,但由于某些原因现在需要移至旧的方式。

我已尝试使用 UpdateReinstall 选项恢复包管理器控制台命令。他们不再生成 packages.config 了。我还将Tools > Options > NuGet Package Manager 切换为packages.config。不好。

【问题讨论】:

    标签: nuget visual-studio-2017 packages.config


    【解决方案1】:

    您需要:

    1. 将“空”packages.config 文件添加到项目中(即 xml 与 the example 一样,但没有单独的 <package> 元素)
    2. 卸载项目或关闭 vs 并在文本编辑器中打开 csproj 文件。
    3. 从项目文件中删除所有 PackageReference 元素。
    4. 确保项目文件中没有设置<RestoreProjectStyle>
    5. 在 VS 中重新打开项目。

    【讨论】:

    • 哦,好吧...感谢您的意见。
    • 此解决方案似乎不适用于 .net 标准项目,例如 <Project Sdk="Microsoft.NET.Sdk"> 项目。
    • 是的,SDK项目只能使用PackageReference
    • 在重新打开之前,我不得不Clear NuGet Cache:工具菜单 -> Nuget 包管理器 -> 包管理器设置 -> 清除所有 NuGet 缓存
    • 这是另一个步骤略有不同的演练:softwaremeadows.com/posts/…
    【解决方案2】:

    我少了一步:

    4.5。确保 Tools>Options>NuGet Package Manager>General>Default package management format 设置为 Packages.config

    【讨论】:

      【解决方案3】:

      想再添加一件事。我尝试了上述所有步骤,Visual Studio 一直尝试使用全局包位置,而不是 Nuget.config 中的 repositoryPath。最后发现我的项目的 obj 目录中有一个 package-lock.json 文件,其中存储了全局包目录。出于某种原因,Visual Studio 中的 Clean 操作没有删除文件,所以我最终做了一个

      git clean -x -d -f
      

      在我的存储库的根目录。这会删除所有未跟踪的文件和目录,并忽略 .gitignore 文件的模式。这有点过分,我本可以尝试手动找到它们,但它完成了工作。现在 Nuget 恢复正确地使用了 Nuget.Config 文件中指定的 repositoryPath 设置。

      【讨论】:

        【解决方案4】:

        我是如何做到的:

        1. 我们在这个项目中使用的包截图
        2. 在项目中添加一个“空”packages.config 文件并将其复制到其中:
        <?xml version="1.0" encoding="utf-8"?>
        <packages>
        </packages>
        
        1. 卸载项目并在文本编辑器中打开 csproj 文件。

        2. 从项目文件中删除所有 PackageReference 元素。

        3. 确保项目文件中没有设置&lt;RestoreProjectStyle&gt;

        4. 确保:

          工具 > 选项> NuGet 包管理器 > 一般> 默认包管理格式设置为Packages.config

        5. 删除项目中的obj文件夹

        6. 使用截图重新下载包

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-01-16
          • 1970-01-01
          • 1970-01-01
          • 2015-08-03
          • 1970-01-01
          • 2013-09-17
          相关资源
          最近更新 更多