java Lang UnsupportedClassVersion Error in Xamarin Studio

Seinfeld picture Seinfeld · Apr 6, 2016 · Viewed 44k times · Source

I am getting the following error when I am building my project . How do I correct this ?

C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(3,3): Error: java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0 (FGH)


My version information from Help > About > Show Details:

Xamarin.Android Version: 6.0.2.1 (Starter Edition)
Android SDK: C:\Users\Admin\AppData\Local\Android\android-sdk

Supported Android versions:

  • 4.0.3 (API level 15)
  • 4.4 (API level 19)
  • 6.0 (API level 23)

SDK Tools Version: 24.4.1
SDK Platform Tools Version: 23.0.1
SDK Build Tools Version: 24 rc2

Java SDK: C:\Program Files (x86)\Java\jdk1.7.0_71
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14) Java HotSpot(TM) Client VM (build 24.71-b01, mixed mode, sharing)

Answer

Brendan Zagaeski picture Brendan Zagaeski · Apr 13, 2016

Unsupported major.minor version 52.0

This error message is caused by an incompatibility with the Java JDK: Android SDK Build-tools versions 24 and higher require Java JDK 8 (1.8), whereas earlier versions were still compatible with Java JDK 7 (1.7). (This resembles older answers about the same error.)

Steps to update:

  1. Update to Java JDK 8. It is recommended to use the 64-bit version for compatibility with the new Xamarin Android designer features in Xamarin Studio 6.1 and Xamarin for Visual Studio 4.2.

  2. Double-check that Java JDK 8 is selected in the Xamarin preferences:

    • Visual Studio: Tools > Options > Xamarin > Android Settings > Java Development Kit Location.

      "Tools > Options > Xamarin > Android Settings > Java Development Kit Location" in Visual Studio

    • Xamarin Studio (on Mac): Xamarin Studio > Preferences > Projects > SDK Locations > Android > Java SDK (JDK).

      "Xamarin Studio > Preferences > Projects > SDK Locations > Android > Java SDK (JDK)"

  3. Install Android SDK Build-tools 24.0.1 or higher.

  4. (Optional) Uninstall the older Android SDK Build-tools 24 that has a bug in aapt:

Alternatives:

If you would rather not update to Java JDK 8 yet, you can instead do one of the following.

  • Uninstall all Android SDK Build-tools versions 24 and higher via the Android SDK manager.

  • Or set the AndroidSdkBuildToolsVersion MSBuild property to an earlier version. For example, if you also have version 23.0.3 installed, you could add the following line within the top <PropertyGroup> element in the Android project .csproj file:

    <AndroidSdkBuildToolsVersion>23.0.3</AndroidSdkBuildToolsVersion>
    

(See also https://releases.xamarin.com/technical-bulletin-android-sdk-build-tools-24/.)


Additional background info

Update July 25, 2016:

Google has now released Android SDK Build-tools 24.0.1. That version fixes a bug in aapt that was present in version 24.


Update July 14, 2016:

Unsupported major.minor version 52.0

It turns out this error message is caused by an incompatibility with the Java JDK rather than with Xamarin.Android: Android SDK Build-tools version 24 requires Java JDK 1.8, whereas earlier versions were still compatible with Java JDK 1.7. (This resembles older answers about the same error.)


Update June 16, 2016:

The non-preview version of Android SDK Build-tools version 24 is now available in the Android SDK Manager. Xamarin.Android is not yet compatible with that version either.


Info from April 12, 2016:

SDK Build Tools Version: 24 rc2

The "Build Tools Version" looks like it might be the problem. Xamarin.Android is not yet compatible with the "24 rc2" Build-tools version from the "Preview Channel" in the Android SDK Manager. You can uninstall that preview version and install one of the non-preview versions of the Build-tools (such as 23.0.3) using the Android SDK Manager.