"GenerateJavaStubs"任务意外失败

16 android mvvmcross xamarin

我在Visual Studio中创建了一个新项目,只在.xml文件中放置(放置两个框架布局),当我调试代码时我有一个错误,请告诉我解决方案

Error   1   The "GenerateJavaStubs" task failed unexpectedly.
System.InvalidOperationException: Sequence contains no elements
at System.Linq.Enumerable.Max(IEnumerable`1 source)
at Xamarin.Android.Tools.TypeNameMapGenerator.WriteBinaryMapping(Stream o, Dictionary`2 mapping)
at Xamarin.Android.Tools.TypeNameMapGenerator.WriteJavaToManaged(Stream output)
at Xamarin.Android.Tasks.GenerateJavaStubs.UpdateWhenChanged(String path, Action`1 generator)
at Xamarin.Android.Tasks.GenerateJavaStubs.WriteTypeMappings(List`1 types)
at Xamarin.Android.Tasks.GenerateJavaStubs.Run()
at Xamarin.Android.Tasks.GenerateJavaStubs.Execute()
at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__20.MoveNext()    TMS_TabletView.Droid
Run Code Online (Sandbox Code Playgroud)

Edg*_*r.A 20

如果你使用一个使用CrossCurrentActivity 的Xamarin插件,例如Plugins.Share,如果你有带有[Application]标签的Application类,这仍然会发生.这是因为在nuget安装时,它会生成另一个具有相同标记的Application类,并导致'GenerateJavaStubs'失败.

解决方案是删除一个Application类/将它们合并为一个.


小智 5

对我来说,这是在安装Xamarin Share Plugin(https://www.nuget.org/packages/Plugin.Share)之后发生的.我在其assemblyinfo.cs中使用以下行设置我的Android应用程序的主题:

[assembly: Application(Theme = "@style/AppStyle.myApp")]
Run Code Online (Sandbox Code Playgroud)

简单地删除这一行解决了这个问题,然后我在MainActivity中设置主题,无论如何都应该如此.


hhk*_*hhk 5

我有同样的问题,错误的细节是这样的; "路径太长.Bla bla名称不能超过248个字符,另一个bla bla不能超过260个字符".

缩短项目名称解决了我的问题.

  • 我的项目名称太长了.缩短了一切,一切正常. (2认同)