UWP and Xamarin Builds Failing with no output

China☆狼群 提交于 2019-12-11 03:07:17

问题


I have tried creating Android projects and cross platform projects that utilize Xamarin in Visual studio. When I build, even an empty project, it fails instantly without seeming to perform any work.

There are no errors or warnings listed.

The output window has the project name and: Build: 0 succeeded, 2 failed, 0 up-to-date, 0 skipped

When I start the project I get message boxes warning me about unexpected logger failures and sometimes the dialogs reference the MuxLogger. This is inconsistent, the messages vary slightly and sometimes don't appear at all. Here is an example:

Incidentally I tried manually building to get more output and I get this:

Unhandled Exception: System.TypeLoadException: Could not load type 'Microsoft.Build.Logging.ProfilerLogger' from assembly 'Microsoft.Build, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
  at System.Signature.GetSignature(Void* pCorSig, Int32 cCorSig, RuntimeFieldHandleInternal fieldHandle, IRuntimeMethodInfo methodHandle, RuntimeType declaringType)
  at System.Reflection.RuntimeMethodInfo.FetchNonReturnParameters()
  at System.Reflection.RuntimeMethodInfo.GetParameters()
  at System.Diagnostics.StackTrace.ToString(TraceFormat traceFormat)
  at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
  at System.Exception.GetStackTrace(Boolean needFileInfo)
  at System.Exception.ToString(Boolean needFileLineInfo, Boolean needMessage)
  at System.Exception.ToString()
  at Microsoft.Build.CommandLine.MSBuildApp.Execute(String commandLine)
  at Microsoft.Build.CommandLine.MSBuildApp.Main()

Note that I can build many other project types such as web projects and MonoGame projects just fine.


回答1:


Ultimately this turned out to be a problem with an old version of MSBuild installed in the Global Assembly Cache (GAC). To check for this, first open an instance of Developer Command Prompt for VS2017. Then output the assemblies in your GAC to a file for easy review:

gacutil -l >> someFile.txt

Look for anything that starts with Microsoft.Build, specifically lines that include Version=15.X (hint, these don't output in order so sort the lines alphabetically).

Uninstall all things that start with Microsoft.Build which may include Microsoft.Build.Framework, Microsoft.Build and more. This should not install versions of Microsoft.Build with a version < 15. Command:

gacutil -u Microsoft.Build

and

gacutil -u Microsoft.Build.Framework

This should allow your project to utilize the correct version of MSBuild and compile successfully.



来源:https://stackoverflow.com/questions/53876702/uwp-and-xamarin-builds-failing-with-no-output

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!