aspnet / StaticFiles

[Archived] Middleware for handling requests for file system resources including files and directories. Project moved to https://github.com/aspnet/AspNetCore
Apache License 2.0
114 stars 72 forks source link

Changing RID from win7-x64 to win-x64 fails tests with exception 'System.DllNotFoundException : Unable to load DLL 'libuv': The specified module could not be found' #189

Closed kichalla closed 6 years ago

kichalla commented 7 years ago

We are trying to move to more generic RIDs like win-x64, but when I change it to that the tests fail with error like

Failed   Microsoft.AspNetCore.StaticFiles.StaticFileMiddlewareTests.HeadFile_HeadersButNotBodyServed(baseUrl: "", baseDir: "SubFolder", requestUrl: "/Empty.txt")
Error Message:
 System.IO.IOException : Failed to bind to address http://localhost:12345.
---- 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)
-------- System.DllNotFoundException : Unable to load DLL 'libuv': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
Stack Trace:
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.<BindLocalhostAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.<BindAddressAsync>d__7.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.AddressesStrategy.<BindAsync>d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.<BindAsync>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer.<StartAsync>d__21`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Hosting.Internal.WebHost.<StartAsync>d__25.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Hosting.HostingAbstractionsWebHostBuilderExtensions.Start(IWebHostBuilder hostBuilder, String[] urls)
   at Microsoft.AspNetCore.StaticFiles.StaticFileMiddlewareTests.<HeadFile_HeadersButNotBodyServed>d__5.MoveNext() in C:\github\staticfiles\test\Microsoft.AspNetCore.StaticFiles.FunctionalTests\StaticFileMiddlewareTests.cs:line 136
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
----- Inner Stack Trace -----

RIDs are usually used in the application which is targeted for publishing but here we use it in the test project. So why are we using it? removing it fails the tests

Tratcher commented 7 years ago

Have you tried this in Kestrel yet?

muratg commented 6 years ago

Closing... If this is still an issue, please reopen.