【问题标题】:.Net core 3.1 worker service self contained publish failed in vs 2019.Net core 3.1 worker 服务自包含发布在 vs 2019 中失败
【发布时间】:2020-05-14 13:11:47
【问题描述】:

我有一个用作 Windows 服务的 .net core 3.1 worker 服务。独立发布在 Visual Studio 2019 中失败。

输出:

1>------ Publish started: Project: RineService, Configuration: Release Any CPU ------
1>Detected package downgrade: System.Runtime.InteropServices from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Console 4.0.0 -> runtime.win.System.Console 4.3.0 -> System.Runtime.InteropServices (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.InteropServices (>= 4.1.0)
1>Detected package downgrade: System.Threading from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Console 4.0.0 -> runtime.win.System.Console 4.3.0 -> System.Threading (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Threading (>= 4.0.11)
1>Detected package downgrade: System.Diagnostics.Debug from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.IO.FileSystem 4.0.1 -> runtime.win.System.IO.FileSystem 4.3.0 -> System.Diagnostics.Debug (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Diagnostics.Debug (>= 4.0.11)
1>Detected package downgrade: System.Runtime.Extensions from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.IO.FileSystem 4.0.1 -> runtime.win.System.IO.FileSystem 4.3.0 -> System.Runtime.Extensions (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.Extensions (>= 4.1.0)
1>Detected package downgrade: System.Runtime.InteropServices from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.IO.FileSystem 4.0.1 -> runtime.win.System.IO.FileSystem 4.3.0 -> System.Runtime.InteropServices (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.InteropServices (>= 4.1.0)
1>Detected package downgrade: System.Threading from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.IO.FileSystem 4.0.1 -> runtime.win.System.IO.FileSystem 4.3.0 -> System.Threading (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Threading (>= 4.0.11)
1>Detected package downgrade: System.Diagnostics.Debug from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> runtime.win.System.Net.Sockets 4.3.0 -> System.Diagnostics.Debug (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Diagnostics.Debug (>= 4.0.11)
1>Detected package downgrade: System.IO.FileSystem from 4.3.0 to 4.0.1. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> runtime.win.System.Net.Sockets 4.3.0 -> System.IO.FileSystem (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.IO.FileSystem (>= 4.0.1)
1>Detected package downgrade: System.Net.NameResolution from 4.3.0 to 4.0.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> runtime.win.System.Net.Sockets 4.3.0 -> System.Net.NameResolution (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Net.NameResolution (>= 4.0.0)
1>Detected package downgrade: System.Net.Primitives from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> runtime.win.System.Net.Sockets 4.3.0 -> System.Net.Primitives (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> System.Net.Primitives (>= 4.0.11)
1>Detected package downgrade: System.Runtime.Extensions from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> runtime.win.System.Net.Sockets 4.3.0 -> System.Runtime.Extensions (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.Extensions (>= 4.1.0)
1>Detected package downgrade: System.Runtime.InteropServices from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> runtime.win.System.Net.Sockets 4.3.0 -> System.Runtime.InteropServices (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.InteropServices (>= 4.1.0)
1>Detected package downgrade: System.Threading from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> runtime.win.System.Net.Sockets 4.3.0 -> System.Threading (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Threading (>= 4.0.11)
1>Detected package downgrade: System.Runtime.InteropServices from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Diagnostics.Process 4.1.0 -> Microsoft.Win32.Primitives 4.0.1 -> runtime.win.Microsoft.Win32.Primitives 4.3.0 -> System.Runtime.InteropServices (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.InteropServices (>= 4.1.0)
1>Detected package downgrade: System.Runtime.InteropServices from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.IO.FileSystem.Watcher 4.0.0 -> Microsoft.Win32.Primitives 4.0.1 -> runtime.win.Microsoft.Win32.Primitives 4.3.0 -> System.Runtime.InteropServices (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.InteropServices (>= 4.1.0)
1>Detected package downgrade: System.Runtime.Extensions from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.NameResolution 4.0.0 -> System.Net.Primitives 4.0.11 -> runtime.win.System.Net.Primitives 4.3.0 -> System.Runtime.Extensions (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.Extensions (>= 4.1.0)
1>Detected package downgrade: System.Runtime.InteropServices from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.NameResolution 4.0.0 -> System.Net.Primitives 4.0.11 -> runtime.win.System.Net.Primitives 4.3.0 -> System.Runtime.InteropServices (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.InteropServices (>= 4.1.0)
1>Detected package downgrade: System.Threading from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.NameResolution 4.0.0 -> System.Net.Primitives 4.0.11 -> runtime.win.System.Net.Primitives 4.3.0 -> System.Threading (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Threading (>= 4.0.11)
1>Detected package downgrade: System.Runtime.Extensions from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Requests 4.0.11 -> System.Net.Primitives 4.0.11 -> runtime.win.System.Net.Primitives 4.3.0 -> System.Runtime.Extensions (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.Extensions (>= 4.1.0)
1>Detected package downgrade: System.Runtime.InteropServices from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Requests 4.0.11 -> System.Net.Primitives 4.0.11 -> runtime.win.System.Net.Primitives 4.3.0 -> System.Runtime.InteropServices (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.InteropServices (>= 4.1.0)
1>Detected package downgrade: System.Threading from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Requests 4.0.11 -> System.Net.Primitives 4.0.11 -> runtime.win.System.Net.Primitives 4.3.0 -> System.Threading (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Threading (>= 4.0.11)
1>Detected package downgrade: System.Runtime.Extensions from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> System.Net.Primitives 4.0.11 -> runtime.win.System.Net.Primitives 4.3.0 -> System.Runtime.Extensions (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.Extensions (>= 4.1.0)
1>Detected package downgrade: System.Runtime.InteropServices from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> System.Net.Primitives 4.0.11 -> runtime.win.System.Net.Primitives 4.3.0 -> System.Runtime.InteropServices (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.InteropServices (>= 4.1.0)
1>Detected package downgrade: System.Threading from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.Sockets 4.1.0 -> System.Net.Primitives 4.0.11 -> runtime.win.System.Net.Primitives 4.3.0 -> System.Threading (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Threading (>= 4.0.11)
1>Detected package downgrade: System.Runtime.InteropServices from 4.3.0 to 4.1.0. Reference the package directly from the project to select a different version. 
1> RineService -> log4net 2.0.8 -> System.Net.NameResolution 4.0.0 -> System.Security.Principal.Windows 4.0.0 -> Microsoft.Win32.Primitives 4.0.1 -> runtime.win.Microsoft.Win32.Primitives 4.3.0 -> System.Runtime.InteropServices (>= 4.3.0) 
1> RineService -> log4net 2.0.8 -> System.Runtime.InteropServices (>= 4.1.0)
1>Restore failed in 276.28 ms for C:\Users\Sadaqat.razzak1\Downloads\RineService (4)\RineService\RineService\RineService.csproj.
========== Build: 0 succeeded, 0 failed, 1 up-to-date, 0 skipped ==========
========== Publish: 0 succeeded, 1 failed, 0 skipped ==========

【问题讨论】:

    标签: c# windows-services .net-core-3.1


    【解决方案1】:

    您应该整合软件包的版本。如果它没有帮助那么 1.关闭Visual Studio 2.清理bin和obj文件夹 3.打开Visual Studio 如果这仍然不起作用,请尝试在没有 Visual Studio 的情况下从命令行界面恢复、构建和运行项目

    【讨论】:

    • 已经尝试过这个,即使是从不同的系统,也没有任何效果。除了合并版本,你能指导一下这个吗?
    • 您是否已将您的软件包整合到一个版本中?
    • 我没有,但我刚刚删除了 log4net 库,它运行良好,确定包版本中存在一些不匹配,请您指导是否有任何工具可以进行这种整合,或者我必须手动为每个库执行此操作。
    • 是的,当然。当您在 Visual Studio 中右键单击解决方案文件时,您应该会在“管理 Nuget 包”列表中看到。之后,您应该有“合并”,附近的“更新”
    【解决方案2】:

    如果您使用 Visual Studio 2022 并引用另一个具有相似文件名的项目,VS2022 不接受 2 个或更多项目中具有相同名称的文件。你必须这样解决它:

    Publish error: Found multiple publish output files with the same relative path

    【讨论】:

      猜你喜欢
      • 2018-06-12
      • 1970-01-01
      • 1970-01-01
      • 2018-07-12
      • 1970-01-01
      • 1970-01-01
      • 2021-06-22
      • 2020-04-08
      • 1970-01-01
      相关资源
      最近更新 更多