如何解决Xamarin - “ManifestMerger”任务意外失败
更新 Visual Studio 版本后,我的 Xamarin Forms 项目未构建,显示以下错误。我试图创建一个空白的应用程序,但发生了同样的错误。
错误:
Severity Code Description Project File Line Suppression State
Error The "ManifestMerger" task Failed unexpectedly.
System.IO.FileNotFoundException: Could not find file 'D:\GIT\AppBlank\AppBlank\AppBlank.Android\obj\Debug\110\android\AndroidManifest.xml.tmp'.
File name: 'D:\GIT\AppBlank\AppBlank\AppBlank.Android\obj\Debug\110\android\AndroidManifest.xml.tmp'
at System.IO.__Error.WinIOError(Int32 errorCode,String maybeFullPath)
at System.IO.FileStream.Init(String path,FileMode mode,FileAccess access,Int32 rights,Boolean useRights,FileShare share,Int32 bufferSize,FileOptions options,Security_ATTRIBUTES secAttrs,String msgPath,Boolean bFromProxy,Boolean useLongPath,Boolean checkHost)
at System.IO.FileStream..ctor(String path,Int32 bufferSize)
at System.Xml.XmlDownloadManager.GetStream(Uri uri,ICredentials credentials,IWebProxy proxy,RequestCachePolicy cachePolicy)
at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri,String role,Type ofObjectToReturn)
at System.Xml.XmlTextReaderImpl.FinishInitUriString()
at System.Xml.XmlTextReaderImpl..ctor(String uriStr,XmlReaderSettings settings,XmlParserContext context,XmlResolver uriResolver)
at System.Xml.XmlReaderSettings.CreateReader(String inputUri,XmlParserContext inputContext)
at System.Xml.XmlReader.Create(String inputUri,XmlParserContext inputContext)
at System.Xml.Linq.XDocument.Load(String uri,LoadOptions options)
at Xamarin.Android.Tasks.ManifestDocument..ctor(String templateFilename)
at Xamarin.Android.Tasks.ManifestMerger.Execute()
at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext() AppBlank.Android
输出构建:
Rebuild started...
Restored D:\GIT\AppBlank\AppBlank\AppBlank\AppBlank.csproj (in 29 ms).
1>------ Rebuild All started: Project: AppBlank,Configuration: Debug Any cpu ------
Restored D:\GIT\AppBlank\AppBlank\AppBlank.Android\AppBlank.Android.csproj (in 99 ms).
1>AppBlank -> D:\GIT\AppBlank\AppBlank\AppBlank\bin\Debug\netstandard2.0\AppBlank.dll
2>------ Rebuild All started: Project: AppBlank.Android,Configuration: Debug Any cpu ------
2> AppBlank.Android -> D:\GIT\AppBlank\AppBlank\AppBlank.Android\bin\Debug\AppBlank.Android.dll
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: The "ManifestMerger" task Failed unexpectedly.
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: System.IO.FileNotFoundException: Could not find file 'D:\GIT\AppBlank\AppBlank\AppBlank.Android\obj\Debug\110\android\AndroidManifest.xml.tmp'.
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: File name: 'D:\GIT\AppBlank\AppBlank\AppBlank.Android\obj\Debug\110\android\AndroidManifest.xml.tmp'
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at System.IO.__Error.WinIOError(Int32 errorCode,String maybeFullPath)
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at System.IO.FileStream.Init(String path,Boolean checkHost)
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at System.IO.FileStream..ctor(String path,Int32 bufferSize)
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at System.Xml.XmlDownloadManager.GetStream(Uri uri,RequestCachePolicy cachePolicy)
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri,Type ofObjectToReturn)
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at System.Xml.XmlTextReaderImpl.FinishInitUriString()
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at System.Xml.XmlTextReaderImpl..ctor(String uriStr,XmlResolver uriResolver)
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at System.Xml.XmlReaderSettings.CreateReader(String inputUri,XmlParserContext inputContext)
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at System.Xml.XmlReader.Create(String inputUri,3): error MSB4018: at System.Xml.Linq.XDocument.Load(String uri,LoadOptions options)
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at Xamarin.Android.Tasks.ManifestDocument..ctor(String templateFilename)
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at Xamarin.Android.Tasks.ManifestMerger.Execute()
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
2>D:\Arquivos de Programas\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1448,3): error MSB4018: at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()
========== Rebuild All: 1 succeeded,1 Failed,0 skipped ==========
为了更正,我尝试将版本 Xamarin.Forms 降级到 4.6.0.847 版本并在 AndroidManifest.xml 中添加工具,但不起作用。
环境:
适用于 Windows 的 Microsoft Visual Studio 社区 2019 版本 16.10.3
Xamarin.Android SDK 11.3.0.4
Xamarin.Forms 5.0.0.2083
目标框架:Android 11.0 (R)
复制: https://github.com/FlavineiOliveira/AppBlank
解决方法
现在问题解决了,但我不知道它发生了什么。
之前,我尝试过:
- 清理和重建解决方案
- 删除文件夹 bin、obj 并重建解决方案
- 更新和降级 Xamarin.Forms 版本
- 关闭并打开重建解决方案
- 重启我的电脑
- 修复 Visual Studio
- 卸载和安装 Visual Studio
现在,我只是打开解决方案并尝试重建。
成功。
环境是一样的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。