你这样做:
dotnet new console
dotnet add-package log4net --version 2.0.8
dotnet publish -r win10-x64
Run Code Online (Sandbox Code Playgroud)
然后你得到:
error NU1605: Detected package downgrade: System.Runtime.InteropServices from 4.3.0 to 4.1.0.
Run Code Online (Sandbox Code Playgroud)
您可以修复它,将以下内容添加到PropertyGroup下的csproj中
<NoWarn>$(NoWarn);NU1605</NoWarn>
Run Code Online (Sandbox Code Playgroud)
但我想了解解决这个问题的正确方法.
Dan*_*ner 21
根据微软的说法,这可以通过将以下内容添加到您的 csproj 来解决。
<PackageReference Include="Microsoft.NETCore.Targets" Version="3.0.0" PrivateAssets="all" />
https://docs.microsoft.com/en-us/nuget/reference/errors-and-warnings/nu1605#issue-1
“.NET Core 1.0 和 1.1 附带的某些包组合在 .NET Core 3.0 或更高版本项目中一起引用时彼此不兼容,并且指定了 RuntimeIdentifier。有问题的包通常以 System. 或Microsoft.,并且版本号在 4.0.0 和 4.3.1 之间。在这种情况下,降级消息将在依赖链中包含一个以 runtime. 开头的包。”
koe*_*oof 20
不幸的是,除了包所有者之外没有其他选择来升级他们的引用或者你在csproj中添加了clausule.有关更多信息,请参阅此GitHub问题:https://github.com/dotnet/core/issues/907
| 归档时间: |
|
| 查看次数: |
15336 次 |
| 最近记录: |