gpt4 book ai didi

asp.net-core - Windows Server 2008 R2 上的 System.DllNotFoundException : Unable to load DLL 'libuv' when publishing . NET Core 网站

转载 作者:行者123 更新时间:2023-12-02 04:30:18 24 4
gpt4 key购买 nike

我在 Windows Server 2008 R2 上发布 .NET Core Asp.NET Web 应用程序时遇到错误。它与libuv有关:

Unhandled Exception: System.AggregateException: One or more errors occurred. ---> System.DllNotFoundException: Unable to load DLL 'libuv': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
at Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.Libuv.NativeMethods.uv_loop_size()
at Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.Libuv.loop_size()
at Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.UvLoopHandle.Init(Libuv uv)
at Microsoft.AspNetCore.Server.Kestrel.Internal.KestrelThread.ThreadStart(Object parameter)

奇怪的是,当我在开发机器上本地发布时,我可以在发布文件夹中看到libuv.dll。该应用程序通过 IIS 在我的本地计算机上运行。

project.json框架:

"frameworks": {
"net461": {}
},

使用这些命令:

dotnet restore
dotnet build
dotnet publish --configuration Release --runtime active

知道如何解决这个问题吗?

最佳答案

10 个月后,我找到了导致此错误的原因,至少是在我的案例中找到了导致该错误的原因。

我有一个使用 .net core 1.1 创建的旧 Web-api 项目,并在 *.csproj 文件中找到了这个 PropertyGroup:

  <PropertyGroup>
<TargetFramework>net47</TargetFramework>
<RuntimeIdentifier>win7-x86</RuntimeIdentifier>
</PropertyGroup>

在我几天前创建的一个新项目中,但使用了较新的模板和 .NET Core 2.0,它看起来像这样:

  <PropertyGroup>
<TargetFramework>net47</TargetFramework>
</PropertyGroup>

此处缺少RuntimeIdentifier。我将其添加到新项目中,错误消失了。现在服务器按预期启动。

关于asp.net-core - Windows Server 2008 R2 上的 System.DllNotFoundException : Unable to load DLL 'libuv' when publishing . NET Core 网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39781687/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com