我正在尝试使用针对win-x86的发布单个文件来发布针对.NET Core 3.1的WPF应用程序(到文件夹)。该应用程序可以很好地发布以进行调试,但是发布失败。如果我取消选择“产生单个文件”,则发布工作正常。我正在使用Visual Studio 2019(16.4.1和预览16.5.1)
发布时出现此一般错误:
发布遇到错误。发布遇到错误。我们 无法确定错误原因。检查输出日志 更多细节。
诊断日志已写入以下位置: “ C:\ Users \ username \ AppData \ Local \ Temp \ tmpD176.tmp”
加上一个不太有用的日志文件:
System.AggregateException: One or more errors occurred. ---> System.Exception: Publish has encountered an error. We were unable to determine the cause of the error. Check the output log for more details.
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
at Microsoft.Publish.Framework.Model.DefaultPublishSteps.<>c__DisplayClass26_0.<IsBuildCompletedSuccessfully>b__2()
at System.Threading.Tasks.Task`1.InnerInvoke()
at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Publish.Framework.Model.DefaultPublishSteps.<DefaultCorePublishStep>d__23.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Publish.Framework.ViewModel.ProfileSelectorViewModel.<RunPublishTaskAsync>d__156.MoveNext()
---> (Inner Exception #0) System.Exception: Publish has encountered an error. We were unable to determine the cause of the error. Check the output log for more details. <---
System.Exception: Publish has encountered an error. We were unable to determine the cause of the error. Check the output log for more details.
我发现this question暗示这可能是Visual Studio超时的问题,尽管该问题与Azure有关。我还发现这个Github issue在尝试使用ReadyToRun进行发布时显示出类似的内容。
我们在几周前成功出版,变化很小。这可能是Visual Studio的问题吗?我意识到这可能是引用和NuGet包的问题,但我真的不知道从哪里开始着手解决此问题的核心...发布并没有提供有关可能导致问题的任何有用信息。 。有什么想法吗?
答案 0 :(得分:2)
对我来说,该错误与自定义nuget源有关,例如Azure DevOps Artifacts。 有时,生成脚本会尝试从Azure DevOps还原nuget并失败,并显示(Unauthorized)错误,该错误会在发布中产生错误。
暂时禁用自定义nuget源,无论使用哪个选项(例如单个文件),都可以再次进行发布。
答案 1 :(得分:1)
我在WPF应用程序中遇到了同样的问题:
VS2019 16.3和dotnet Core 3.0-发布工作正常。
已更新为VS2019 16.4.1和dotnet Core 3.1-如所述发布失败。
唯一的区别是我瞄准的是X64。
在多次尝试编辑发布的FolderProfile之后(没有一个解决了问题),我完全删除了FolderProfile并创建了一个针对另一个文件夹的新文件夹。
再次发布作品。
希望这会有所帮助。
答案 2 :(得分:1)
我有一个相同的问题,就我而言,解决方法是从.csproj文件删除X86系统的某些dll:
<ItemGroup>
<Reference Include="System.Management">
<HintPath>..\..\..\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\System.Management.dll</HintPath>
</Reference>
</ItemGroup>
答案 3 :(得分:0)
我遇到了同样的问题,但是我认为我的问题与我设置“ PublishSingleFile”时无法构建的项目有关。
我在他们的github问题帖子中添加了comment,假设这是他们的错误,因为.net core 3.0对我来说很好。
答案 4 :(得分:0)
值得检查您的Internet连接。发布独立的部署时遇到问题,因为我在公司防火墙后面。与您的错误相同:
发布遇到错误。我们无法确定 错误的原因。检查输出日志以获取更多详细信息。
在该日志文件中仅提供更多信息。断开连接后,VPN应用程序发布无误。