Je reçois l'erreur suivante lorsque je construis mon projet. Comment puis-je corriger cela?
C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets (3,3): Erreur: Java.lang.UnsupportedClassVersionError: com/Android/dx/command/Main: non pris en charge major.minor version 52.0 (FGH)
Mes informations de version de Aide> À propos de> Afficher les détails :
Xamarin.Android Version: 6.0.2.1 (Édition Initiale)
SDK Android: C:\Utilisateurs\Admin\AppData\Local\Android\android-sdk
Versions Android prises en charge:
Outils du SDK Version: 24.4.1
SDK Platform Tools Version: 23.0.1
SDK Build Tools Version: 24 rc2
SDK Java: C:\Fichiers de programme (x86)\Java\jdk1.7.0_71
Version Java "1.7.0_71"
Environnement d'exécution Java SE (version 1.7.0_71), client Java HotSpot (TM) VM (version 24.71-b01, mode mixte, partage)
La version 52.0 ici fait référence à la version spécifique de JDK, qui dans ce cas concerne JDK 8.
Xamarin.Android 7.0 requiert JDK 1.8 Pour utiliser les API Android Nougat (API 24). Vous pouvez continuer à utiliser les versions antérieures Du JDK si vous ciblez des niveaux d'API Android antérieurs:
De plus, une version 64 bits du JDK est nécessaire pour utiliser les contrôles personnalisés dans Android Designer .
L'option la plus simple consiste à installer la version 64 bits de JDK 1.8 car elle est compatible avec tous les niveaux précédents de l'API et supporte les nouvelles fonctionnalités du concepteur Android.
(Une complication malheureuse avec JDK 1.8 est que not n'est pas compatible avec La version obsolète de Proguard qui est incluse dans le SDK Android. Actuellement, cela provoquera une erreur. "Version de classe non prise en charge." number [52.0] "lorsque tente d'utiliser les fonctions Proguard ou Multidex dans Xamarin.Android. Voir 44187 . Je vous recommanderais de l'installer du côté de la version par défaut fournie par Android. Android-sdk\tools\proguard
. Renommez simplement le dossier existant en quelque chose d'autre et ajoutez la nouvelle version de proguard.)
Major.minor version 52.0 non prise en charge
Ce message d'erreur est dû à une incompatibilité avec le JDK Java: les versions 24 et supérieures des outils de génération de SDK Android requièrent le JDK Java 8 (1.8), alors que les versions antérieures étaient toujours compatibles avec le JDK Java 7 (1.7). (Cela ressemble à réponses plus anciennes à propos de la même erreur.)
Étapes pour mettre à jour:
Mise à jour vers Java JDK 8 . Il est recommandé d'utiliser la version 64 bits pour assurer la compatibilité avec les nouvelles fonctionnalités de Xamarin Android Designer dans Xamarin Studio 6.1 et Xamarin pour Visual Studio 4.2.
Vérifiez que Java JDK 8 est sélectionné dans les préférences de Xamarin:
Installez Android SDK Build-tools 24.0.1 ou une version ultérieure.
(Facultatif) Désinstallez les anciens outils de génération de SDK Android 24 qui ont un bogue dans aapt
:
Alternatives:
Si vous préférez ne pas mettre à jour Java JDK 8 pour le moment, vous pouvez effectuer l'une des opérations suivantes.
Désinstallez toutes les versions 24 et supérieures du kit de développement Android SDK via le gestionnaire de SDK Android.
Ou définissez la propriété AndroidSdkBuildToolsVersion
MSBuild sur une version antérieure. Par exemple, si vous avez également installé la version 23.0.3, vous pouvez ajouter la ligne suivante dans l'élément <PropertyGroup>
en haut du fichier de projet .csproj
du projet Android:
<AndroidSdkBuildToolsVersion>23.0.3</AndroidSdkBuildToolsVersion>
(Voir aussi https://releases.xamarin.com/technical-bulletin-Android-sdk-build-tools-24/ .)
Mise à jour du 25 juillet 2016:
Google a maintenant publié Android SDK Build-tools 24.0.1. Cette version corrige un bogue dans aapt
présent dans la version 24.
Mise à jour du 14 juillet 2016:
Major.minor version 52.0 non prise en charge
Il s'avère que ce message d'erreur est dû à une incompatibilité avec le JDK Java plutôt qu'avec Xamarin.Android: Android SDK Build-tools version 24 requiert Java JDK 1.8, alors que les versions précédentes étaient toujours compatibles avec Java JDK 1.7. (Cela ressemble à réponses plus anciennes à propos de la même erreur.)
Mise à jour du 16 juin 2016:
La version non prévisualisée d'Android SDK Build-tools version 24 est maintenant disponible dans Android SDK Manager. Xamarin.Android n'est pas encore compatible avec cette version non plus.
Info du 12 avril 2016:
Outils de compilation SDK Version: 24 rc2
La "Version des outils de génération" semble être le problème. Xamarin.Android n'est pas encore compatible avec la version "24 rc2" Build-tools de la "Chaîne de prévisualisation" du gestionnaire de SDK Android. Vous pouvez désinstaller cette version d'aperçu et installer l'une des versions autres que l'aperçu des outils de compilation (tels que 23.0.3) à l'aide du gestionnaire de SDK Android.
Téléchargez le dernier JDK et installez-le,
Ensuite aller à:
J'espère que cela t'aides.
Comme Brendan Zagaeski a déclaré, c'est un problème généré en raison de l'utilisation de la version de prévisualisation des outils de construction
S'il vous plaît suivez ces étapes
UPDATE: une réponse détaillée peut être trouvée ici https://stackoverflow.com/a/37827161/5073734
** MISE À JOUR 2016 NOV ** Certains de mes amis m'ont dit que cela peut aussi arriver avec les paquets de nuget. Si ce qui précède ne résout pas vos problèmes, essayez de réinstaller les paquets Nuget.
Assurez-vous que si dans VS vous allez à
Projet> Nom du projet Propriétés> Application
vous avez téléchargé toutes les versions sélectionnées dans le SDK Android
Supposons que vous n'ayez installé que les API pour Android 6.0 (niveau 23) et 5.1.1 (niveau 22), mais que vous définissiez votre Minimum Android pour cibler sur un niveau inférieur à ce niveau 16, par exemple. Cela donnera l'erreur Java.lang.UnsupportedClassVersionError:.
Assurez-vous simplement que vous utilisez le bon niveau d'API
Je réalise que c'est un peu plus vieux maintenant, mais j'ai aussi rencontré ce problème et rien de ce que j'ai trouvé en ligne ne résoudrait ce problème. Enfin, j'ai essayé de désinstaller et de réinstaller certains paquets de nugets que j'avais installés (SQLite.Net). Après cela, il a compilé. J'espère que cela servira à quelqu'un qui a épuisé ces solutions plus courantes.
J'ai rencontré le même problème, la version 1.7 de Java de mon système était installée. J'ai installé la version 1.8 dans le système.
Chemin d'accès mis à jour de jdk Outils-> Options-> Xamarin-> Paramètres Android -> (emplacement du kit de développement Java) définissez le chemin jdk sur la nouvelle version de jdk.
projet rebuid à nouveau, problème résolu.
La suppression de la version 24, le téléchargement et l’installation de JDK 1.8_112, le remplacement du kit de développement Java par JKD 1.8_112 (présent dans les fichiers de programme et non les fichiers de programme x86) et la reconstruction du projet me convenaient parfaitement.
Il y a quelques minutes, je faisais face au même problème . Une solution sûre: A) Allez dans Outils> Options> Xamarin> Paramètres Android> Emplacement du kit de développement Java> changez-le en JDK 1.8 pointez sur la version Java actuelle
100% de travail