首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"LinkAssemblies“任务意外失败。Xamarin.Forms 3.4.0.1009999更新

"LinkAssemblies“任务意外失败。Xamarin.Forms 3.4.0.1009999更新
EN

Stack Overflow用户
提问于 2019-01-24 08:27:55
回答 2查看 2.4K关注 0票数 1

在更新到Xamarin.Forms 3.4.0.1009999之后,在尝试以发布模式- The "LinkAssemblies" Task Failed Unexpectedly运行应用程序时会出现以下错误

我已经搜索了这个错误,并在这个问题上看到了多个线程,但是它们都是xamarin的早期版本,而不是建议的解决方案。

不过,我试过的是:

  • 清除bin和obj文件夹,然后重新生成解决方案。
  • 改变linker behaviour (关闭它),这实际上是可行的,但一个巨大的应用程序不是一个选项。
  • 尝试过清洁和建筑,而不是重建,这在本质上是一样的事情,这是值得一试,虽然,它是对其他人以前的工作。
  • 从Xamarin.Forms项目中删除和重新添加Xamarin.Android包 日志:
代码语言:javascript
复制
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(5,5): Error MSB4018: The "LinkAssemblies" task failed unexpectedly.
Mono.Linker.MarkException: Error processing method: 'Android.Views.ScaleGestureDetector Xamarin.Forms.Platform.Android.GestureManager::InitializeScaleDetector()' in assembly: 'Xamarin.Forms.Platform.Android.dll' ---> Mono.Cecil.ResolutionException: Failed to resolve System.Void Android.Support.V4.View.ScaleGestureDetectorCompat::SetQuickScaleEnabled(Android.Views.ScaleGestureDetector,System.Boolean)
  at Mono.Linker.Steps.MarkStep.HandleUnresolvedMethod (Mono.Cecil.MethodReference reference) [0x00013] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Mono.Linker.Steps.MarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x0004a] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Mono.Linker.Steps.MarkStep.MarkInstruction (Mono.Cecil.Cil.Instruction instruction) [0x00040] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Mono.Linker.Steps.MarkStep.MarkMethodBody (Mono.Cecil.Cil.MethodBody body) [0x00098] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Mono.Linker.Steps.MarkStep.ProcessMethod (Mono.Cecil.MethodDefinition method) [0x00162] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Mono.Linker.Steps.MarkStep.ProcessQueue () [0x0001b] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
   --- End of inner exception stack trace ---
  at Mono.Linker.Steps.MarkStep.ProcessQueue () [0x00047] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Mono.Linker.Steps.MarkStep.ProcessPrimaryQueue () [0x0000a] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Mono.Linker.Steps.MarkStep.Process () [0x00102] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Mono.Linker.Steps.MarkStep.Process (Mono.Linker.LinkContext context) [0x0000d] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at MonoDroid.Tuner.MonoDroidMarkStep.Process (Mono.Linker.LinkContext context) [0x0000b] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Mono.Linker.Pipeline.Process (Mono.Linker.LinkContext context) [0x0001c] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at MonoDroid.Tuner.Linker.Run (Mono.Linker.Pipeline pipeline, Mono.Linker.LinkContext context) [0x00000] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at MonoDroid.Tuner.Linker.Process (MonoDroid.Tuner.LinkerOptions options, Mono.Linker.ILogger logger, Mono.Linker.LinkContext& context) [0x00071] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Xamarin.Android.Tasks.LinkAssemblies.Execute (Java.Interop.Tools.Cecil.DirectoryAssemblyResolver res) [0x002d4] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Xamarin.Android.Tasks.LinkAssemblies.Execute () [0x0021f] in <947dd92f52fa43c1922f96c7b9774bdc>:0 
  at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute () [0x00023] in /Users/builder/jenkins/workspace/build-package-osx-mono/2018-06/external/bockbuild/builds/msbuild-15/src/Build/BackEnd/TaskExecutionHost/TaskExecutionHost.cs:573 
  at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask (Microsoft.Build.BackEnd.ITaskExecutionHost taskExecutionHost, Microsoft.Build.BackEnd.Logging.TaskLoggingContext taskLoggingContext, Microsoft.Build.BackEnd.TaskHost taskHost, Microsoft.Build.BackEnd.ItemBucket bucket, Microsoft.Build.BackEnd.TaskExecutionMode howToExecuteTask) [0x001f6] in /Users/builder/jenkins/workspace/build-package-osx-mono/2018-06/external/bockbuild/builds/msbuild-15/src/Build/BackEnd/Components/RequestBuilder/TaskBuilder.cs:784  (MSB4018) (LoyaltyWorx.Android)

我期望该项目能像以前版本的Xamarin.Forms那样在设备上运行,而不必改变链接器的行为,并显着地增加应用程序的大小。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-01-24 10:35:14

将Xamarin.Android.Support库更新为v27。这通常解决了这个问题。不要忘记清理和构建,可能会重新启动Visual

票数 3
EN

Stack Overflow用户

发布于 2019-07-24 17:28:15

对我来说,这个问题并没有像上面那样得到解决。解决方案是根据下面的文章:https://forums.xamarin.com/discussion/146012/error-during-release-build设置到None的链接

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54342249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档