.net core 包装';游击队1.0.0';已使用';还原;。NETFramework,版本=v4.6.1';而不是项目目标框架

.net core 包装';游击队1.0.0';已使用';还原;。NETFramework,版本=v4.6.1';而不是项目目标框架,.net-core,nuget,.net Core,Nuget,我试图理解为什么会发生这种警告 台阶 开放式Visual Studio 2019 创建新的.NET核心类库。这是使用TargetFramework.NETCore2.1创建的 添加nuget包 建设项目 预期结果 没有问题或警告 实际结果 警告NU1701 包“GuerrillarSharp 1.0.0”是使用“.NETFramework,版本=v4.6.1”而不是项目目标框架“.NETCoreApp,版本=v2.1”还原的。此软件包可能与您的项目不完全兼容 我查的 我在Google/Stack

我试图理解为什么会发生这种警告

台阶
  • 开放式Visual Studio 2019
  • 创建新的.NET核心类库。这是使用TargetFramework.NETCore2.1创建的
  • 添加nuget包
  • 建设项目
  • 预期结果 没有问题或警告

    实际结果 警告NU1701
    包“GuerrillarSharp 1.0.0”是使用“.NETFramework,版本=v4.6.1”而不是项目目标框架“.NETCoreApp,版本=v2.1”还原的。此软件包可能与您的项目不完全兼容

    我查的 我在Google/Stack Overflow上发现了类似的问题,但不知道这是如何解释nuget包的情况的。在许多其他帖子中,解决方案通常是安装更新版本的nuget软件包

    游击队依赖:

    • Json(>=11.0.2),支持.NET标准1.0、1.3和2.0。 所以在我看来,这应该与.NETCore2.1兼容

    游击队只有net461二进制文件。检查的方法有很多,但有一种方法是检查。net461与netcoreapp2.1不“直接”兼容,但由于许多软件包作者没有更新其软件包以支持netstandard,NuGet和.NET SDK团队添加了资产目标回退,基本上说“好吧,net461 API接近netstandard,所以让我们假装它是兼容的,尽管它可能不是”。这就是你得到警告的原因。它可能会工作,但如果Guerrelasharp使用的是任何纯.NET Framework API,它将在运行时崩溃。

    Guerrelasharp只有net461二进制文件。检查的方法有很多,但有一种方法是检查。net461与netcoreapp2.1不“直接”兼容,但由于许多软件包作者没有更新其软件包以支持netstandard,NuGet和.NET SDK团队添加了资产目标回退,基本上说“好吧,net461 API接近netstandard,所以让我们假装它是兼容的,尽管它可能不是”。这就是你得到警告的原因。它可能会工作,但如果GuerralashArp使用的是任何纯.NET Framework API,它将在运行时崩溃。

    感谢fuget.org的提示!因此,如果我理解正确,这不是你在nuget.org上可以看到的,对吗?当包作者创建一个包含组的依赖项部分,并在这些组中指定它们支持的TFM时,nuget.org将在依赖项部分下显示它。但目前,如果包作者没有将TFM信息作为依赖组提供,那么就没有了。目标框架(不仅是显示,而且是搜索)周围有一些常见的请求,并且有计划改进体验,但对于工程师来说,还没有达到最高优先级。不过,我们有一个实习生正在研究一些最终会对这个功能有用的东西。谢谢,我在GuerrillarSharp回购中记录了一个问题。谢谢fuget.org的提示!因此,如果我理解正确,这不是你在nuget.org上可以看到的,对吗?当包作者创建一个包含组的依赖项部分,并在这些组中指定它们支持的TFM时,nuget.org将在依赖项部分下显示它。但目前,如果包作者没有将TFM信息作为依赖组提供,那么就没有了。目标框架(不仅是显示,而且是搜索)周围有一些常见的请求,并且有计划改进体验,但对于工程师来说,还没有达到最高优先级。不过,我们有一个实习生正在研究一些最终会对这个功能有用的东西。谢谢,我在游击队夏普回购中记录了一个问题