Android.Support库v7 AppCompat更新至21.0.3版本后出现错误。

24
在将Android.Support库v7 AppCompat更新到21.0.3版本后,我遇到了以下错误:
1>C:\Program Files (x86)\MSBuild\Xamarin\Androi\Xamarin.Android.Common.targets(236,2): error XA5207: Please install package: 'Android Support Library' available in SDK installer. Java library file C:\Users...\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded\classes.jar doesn't exist.

1>C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(236,2): error XA5207: Please install package: 'Android Support Library' available in SDK installer. Java library file C:\Users...\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded\libs/internal_impl-21.0.3.jar doesn't exist.

1>C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(236,2): error XA5206: Please install package: 'Android Support Library' available in SDK installer. Android resource directory C:\Users...\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded./ doesn't exist.

我尝试从SDK管理器中删除Android支持库21.0.3,并重新下载。

有类似的问题:Android支持库和Media Router .jar文件找不到,但是我没有在我的项目中使用地图。我该怎么解决?

我正在使用Visual Studio 2013, 使用API 21进行编译(Xamarin.Android v5.0支持), 最小目标API为16, 目标API为21。


请问您使用哪个IDE或构建系统?以及您是如何编译您的项目的? - Kevin LE GOFF
5个回答

57
  1. 删除文件夹:21.0.3 (...\AppData\Local\Xamarin\Android.Support.v4\21.0.3)
  2. 重新构建您的应用程序。

    对我来说运行良好:

VS xamarin


1
在 Mac 上路径为:/Users/XXXX/.local/share/Xamarin/ 来自 Xamarin 论坛 - Swapnil Luktuke
4
我花了好几个小时来解决这个问题,直到找到了你的答案。谢谢。 - xleon
4
对我来说,我必须删除整个 /Users/XXXX/.local.share/Xamarin/ 文件夹,仅删除各个版本目录是不够的。 - Justin
2
一年过去了,这个解决方案仍然很有效,谢谢! - Enrique Zavaleta
7
我知道问题出在哪里了,就是“不耐烦”……我在检查源代码后打开了我的项目,进行了一次重建,但不明白为什么要花这么长时间。然后我取消了重建,这样做停止了zip文件的下载。当你重新构建时会很快,但zip文件会损坏。Xamarin应该对这个文件进行哈希值检查。 - stoic
显示剩余4条评论

10
  1. 删除文件夹 (...\AppData\Local\Xamarin\Android.*)
  2. 从目录(...\AppData\Local\Xamarin\zips)中移除 *.zip 文件
  3. 重新构建你的应用程序。

1
删除zip文件是解决问题的关键。正如Dusty Roberts所说,如果在文件下载过程中取消构建,则它们将损坏,并且会继续抛出错误,直到您删除它们并允许其获取正确的文件(在下一次构建中)。 - Richard Marskell - Drackir

2
您可以尝试以下三个选项之一:
1- 首先让VS自行解决问题。只需删除(...\AppData\Local\Xamarin\Android.Support.v4)目录(如rubStackOverflow所说),然后重新构建项目即可。 VS将下载并安装所需内容。如果不起作用,请执行第2步。
2- 手动下载android_m2repository_rnn.zip并将其放入(...\AppData\Local\Xamarin\zips )文件夹中。 VS将完成剩下的工作(包括提取和安装文件)。您可以从此处下载m2repositories: https://dl-ssl.google.com/android/repository/android_m2repository_r33.zip 只需将URL末尾的数字重命名为所需的数字,然后下载该文件。
注意:在某些情况下,您可能需要将文件重命名为其URL的MD5哈希值。(对于我来说,VS有点愚蠢,除非我将m2repository文件重命名为其MD5哈希值,否则它什么也不做)。
以下是一些MD5哈希列表:
android_m2repository_r33.zip --> 5FB756A25962361D17BBE99C3B3FCC44.zip android_m2repository_r32.zip --> F16A3455987DBAE5783F058F19F7FCDF.zip android_m2repository_r31.zip --> 99A8907CE2324316E754A95E4C2D786E.zip android_m2repository_r30.zip --> 05AD180B8BDC7C21D6BCB94DDE7F2C8F.zip android_m2repository_r29.zip --> 2A3A8A6D6826EF6CC653030E7D695C41.zip android_m2repository_r28.zip --> 17BE247580748F1EDB72E9F374AA0223.zip android_m2repository_r27.zip --> C9FD4FCD69D7D12B1D9DF076B7BE4E1C.zip android_m2repository_r26.zip --> 8157FC1C311BB36420C1D8992AF54A4D.zip android_m2repository_r25.zip --> 0B3F1796C97C707339FB13AE8507AF50.zip android_m2repository_r24.zip --> 8E3C9EC713781EDFE1EFBC5974136BEA.zip android_m2repository_r23.zip --> D5BB66B3640FD9B9C6362C9DB5AB0FE7.zip android_m2repository_r22.zip --> 96659D653BDE0FAEDB818170891F2BB0.zip android_m2repository_r21.zip --> CD3223F2EFE068A26682B9E9C4B6FBB5.zip android_m2repository_r20.zip --> 650E58DF02DB1A832386FA4A2DE46B1A.zip android_m2repository_r19.zip --> 263B062D6EFAA8AEE39E9460B8A5851A.zip android_m2repository_r18.zip --> 25947AD38DCB4865ABEB61522FAFDA0E.zip android_m2repository_r17.zip --> 49054774F44AE5F35A6BA9D3C117EFD8.zip android_m2repository_r16.zip --> 0595E577D19D31708195A83087881EE6.zip 您可以在这里找到列表: https://developer.xamarin.com/guides/android/troubleshooting/resolving-library-installation-errors/#Manually_Downloading_m2repository 3- 手动下载和安装 m2repository 文件. 详细过程可以在此处找到: https://developer.xamarin.com/guides/android/troubleshooting/resolving-library-installation-errors/#Manually_Downloading_and_Installing_m2repository_Files

1
  • 关闭 Visual Studio
  • 删除或重命名 C:\Users\\AppData\Local\ 中的 Xamarin 文件夹
  • 重新打开 Visual Studio 项目
  • 清理解决方案
  • 重新构建并等待长时间不要中断

0

删除所有缓存的NuGet包并重新构建解决方案,这对我来说解决了问题。我从这里删除了文件夹:

C:\Users\{YourUserName}\.nuget\packages


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接