Nik*_*Nik 49 .net csproj nuget .net-core visual-studio-2017
我刚刚更新了我的解决方案的所有nuget包(dotnet core 1.1项目).
我现在收到以下警告,我真的不知道他们的意思.
更新:我仍然收到上面提到的警告.我的Web项目警告Microsoft.NETCore.App包(见下面的截图),我的lib项目警告NETStandard.Library(见上面的截图)
当尝试在NuGet包管理器中更新Microsoft.NETCore.App时,我收到以下错误:
希望有人可以帮助我摆脱这些警告并设置它应有的一切,这样我就可以更新我的所有包裹.
提前致谢!
小智 32
这通常是因为您尝试安装的项目需要比您已包含在项目中的子依赖项的更新版本。
解决方案是在安装包之前更新或删除项目中的现有依赖项。
例子:
检测到包降级:Newtonsoft.Json 从 9.0.0 到 8.0.0。
这意味着您的项目中已将 Newtonsoft.Json 8.0.0 列为依赖项,但您尝试安装的包至少需要 9.0.0 版作为依赖项。
这是因为Visual Studio 不会自动升级此依赖项,因为您已为项目指定了显式版本。您可以将项目中的依赖项升级到所需的最低版本,也可以将其从项目中删除,然后让正在安装的包处理它。
要解决这个问题,在我们上面的示例中,这意味着找到“Newtonsoft.Json 8.0.0”并将其升级到“9.0.0”版本,或者在安装包之前将其从项目中删除。
Nik*_*Nik 21
根据上面的答案,工作解决方案是从csproj文件中删除以下行.
Web App项目:
<RuntimeFrameworkVersion>1.0.4</RuntimeFrameworkVersion>
Run Code Online (Sandbox Code Playgroud)
Lib项目:
<NetStandardImplicitPackageVersion>1.6.0</NetStandardImplicitPackageVersion>
Run Code Online (Sandbox Code Playgroud)
Jim*_*haw 20
在打开现有解决方案后,我发生了这种情况,但不是警告,而是错误.
我打开了YourAwesomeApp.csproj文件并逐个检查了"检测到的软件包降级"错误,并手动将该订单项的版本从现有版本更改为错误本身中显示的指定版本.
例如,如果Error说降级检测到"SqlServer 1.0.4 - > 1.0.3",则找到包SqlServer的行,并将版本从1.0.3编辑到1.0.4.
构建项目后,这些错误应该会消失.
这样做的缺点是这次我只有5个错误,但如果另一个人的项目包含50个这样的错误会怎样.那个人手动编辑这些行的任务将非常繁琐且耗时.
Ger*_*son 16
在我的情况下,这些属性都没有在我的csproj文件中设置.
我不得不告诉VS通过NuGet更新这些软件包.
在从1.0移动到1.1之后解析显式引用隐式依赖.NETCore.App的警告之后,我出现了警告.
这似乎也影响升级到2.0,分辨率是一样的.使用NuGet手动更新这些包.感谢IbrarMumtaz指出这一点!
mra*_*api 10
我能够修复一些错误,比如在cproj中添加NoWarn
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<NoWarn>$(NoWarn);NU1605</NoWarn>
</PropertyGroup>
...
</Project>
Run Code Online (Sandbox Code Playgroud)
您可能只想在多个软件包升级期间临时添加它,并在以后删除它.
我得到:
错误 NU1605:检测到包降级:System.Net.NameResolution 从 4.3.0 到 4.0.0。直接从项目中引用包以选择不同的版本。
所以我通过运行(在项目文件夹中)引用了包目录:
dotnet add package System.Net.NameResolution
Run Code Online (Sandbox Code Playgroud)
问题:
一个依赖包指定了一个比最终解决的还原更高版本的包的版本约束。也就是说,由于解析包时的“最近获胜”规则,图中较近的包可能已覆盖较远的包。
解决方案:
为要使用的更高版本的包添加对项目的直接引用。
尝试删除:
<IsPackable>false</IsPackable>
Run Code Online (Sandbox Code Playgroud)
来自您的项目文件 - 这对我有用!
如果您仍然留下NU1605错误代码,您可以通过将以下内容添加到您的项目文件中来忽略它:
<PropertyGroup>
<NoWarn>NU1605</NoWarn>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
小智 5
复制路径并检查。就我而言,该项目引用 4.6.0,但我要安装的程序集至少需要 System.Diagonistics.DiagonsticSource 版本 5.0.0
转到管理项目的 NuGet 包并搜索“System.Diagonistics.DiagonsticSource”并更新。请记住,这还可能导致另一个“检测到的包降级”错误(如果发生这种情况,您应该返回到第一步)

现在,安装您最初想要安装的程序集(在我的例子中是 Microsoft.ApplicationInsights)
| 归档时间: |
|
| 查看次数: |
37370 次 |
| 最近记录: |