web-dev-qa-db-fra.com

Xamarin Visual Studio - major.minor version 52.0 non prise en charge

Je tente d'exécuter un exemple Hello World à partir du didacticiel suivant: https://mva.Microsoft.com/en-US/training-courses/xamarin-for-absolute-beginners-16182

Je reçois l'erreur suivante:

Severityjava.lang.UnsupportedClassVersionError: com/Android/dx/command/Main  :  Unsupported major.minor version 52.0    HelloXamarin.Droid          

J'ai essayé de nombreuses combinaisons de versions JRE/JDK. Je les ai désinstallés, réinstallés. J'ai essayé JDK 7 et JDK 8. J'obtiens toujours la même chose, quelle que soit la combinaison.

7
ollama
10
Agile Hobo

J'ai eu un problème similaire lorsque le projet Xamarin.Android a été déplacé de Xamarin Studio (Mac) vers Visual Studio 2015 (Windows 10). 

J'ai résolu ce problème après l'installation de JDK 1.8.0_121 (for Widows x64).

1
Vadzim Papko

La solution n'impliquant pas l'utilisation de Visual Studio IDE (c'est-à-dire des serveurs de génération) consiste à importer la clé suivante dans le registre après l'installation du JDK version 1.8.0_101:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Novell\Mono for Android]
"JavaSdkDirectory"="C:\\Program Files (x86)\\Java\\jdk1.8.0_101"

N'oubliez pas de nettoyer/mettre à jour les fichiers sdks.cache dans les répertoires obj [Release | Debug] pour faire référence à la version correcte de jdk.

Pour référence, voici une liste complète des chemins utilisés par Mono pour Android:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Novell\Mono for Android]
"AndroidNdkDirectory"="C:\\ProgramData\\Microsoft\\AndroidNDK\\Android-ndk-r11c"
"AndroidSdkDirectory"="C:\\Program Files (x86)\\Android\\Android-sdk"
"JavaSdkDirectory"="C:\\Program Files (x86)\\Java\\jdk1.8.0_101"
1
too

Cela a également fonctionné pour moi SEULEMENT changer l'entrée du registre

0
Luca V