【问题标题】:Building of .NET Core application offline doesn't create the "NuGetFallbackFolder" folder离线构建 .NET Core 应用程序不会创建“NuGetFallbackFolder”文件夹
【发布时间】:2020-04-11 02:14:18
【问题描述】:

我已经安装了 VS2019 并且运行“dotnet --version”命令显示“3.1.100”。

当我尝试在不连接网络的情况下构建 .NET 标准库项目时,会引发以下错误

“错误 NU1100:无法解析 'NETStandard.Library (>= 2.0.3)' '.NETStandard,Version=v2.0'

我的项目有以下标签

<TargetFramework>netstandard2.0</TargetFramework>

之前我使用的是“dotnet-sdk-2.1.301-win-x64”的二进制文件,当我构建项目时,当我构建项目时,恢复命令会自动提取并创建“NuGetFallbackFolder”文件夹,而无需连接到网络。

安装 VS2019 后不会发生同样的情况。

有解决办法吗?

【问题讨论】:

    标签: c# .net .net-core nuget .net-standard


    【解决方案1】:

    .NET Standard 2.0 项目可以在 .NET Core 3.1.100 SDK 上成功编译。确保您没有定义较旧的 SDK 的 global.json。

    因为基于您遇到的错误,无法恢复“.NET Standard 2.0.3”意味着您的代码中某处有 global.json,或者您在 csproj 中明确引用 .NET 运行时版本,而不仅仅是使用 netstandard2.0 的 TFM 作为 csproj 文件中定义的主要目标。

    【讨论】:

    • 我想离线编译项目,当我连接到网络时。如果有 NugetFallback 文件夹,则脱机编译失败并出现上述错误。我既没有 global.json 文件,我的项目也没有 .NET 运行时版本。我的 csproj 只有“TargetFramework”属性
    【解决方案2】:

    从github复制:

    从 VS 16.3 和 .NET Core 3.0 开始,我们不再使用 nuget 后备文件夹。这样做的一个副作用是,为了让您能够离线使用 .NET Standard 2.0,您需要在在线时至少恢复一次 .NET Standard 2.0 项目。如果你每次清理你的 NuGet 缓存

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-30
      • 1970-01-01
      • 1970-01-01
      • 2021-04-29
      • 2021-11-04
      • 1970-01-01
      相关资源
      最近更新 更多