Java Lang UnsupportedClassVersion Xamarin Studio中的错误

Sei*_*eld 39 c# java android xamarin

我在构建项目时遇到以下错误.我该如何纠正?

C:\ Program Files(x86)\ MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(3,3):错误:java.lang.UnsupportedClassVersionError:com/android/dx/command/Main:不支持的major.minor版本52.0(FGH)


我的版本信息来自帮助>关于>显示详细信息:

Xamarin.Android版本:6.0.2.1(简化版)
Android SDK:C:\ Users\Admin\AppData\Local\Android\android-sdk

支持的Android版本:

  • 4.0.3(API级别15)
  • 4.4(API级别19)
  • 6.0(API级别23)

SDK工具版本:24.4.1
SDK平台工具版本:23.0.1
SDK构建工具版本:24 rc2

Java SDK:C:\ Program Files(x86)\ Java\jdk1.7.0_71
java version"1.7.0_71"
Java(TM)SE运行时环境(版本1.7.0_71-b14)Java HotSpot(TM)客户端VM(版本24.71) -b01,混合模式,共享)

Bre*_*ski 64

不支持的major.minor版本52.0

此错误消息是由与Java JDK不兼容引起的:Android SDK Build-tools版本24及更高版本需要Java JDK 8(1.8),而早期版本仍与Java JDK 7(1.7)兼容.(这类似于关于同一错误的旧答案.)

更新步骤:

  1. 更新到Java JDK 8.建议使用64位版本与Xamarin Studio 6.1和Xamarin for Visual Studio 4.2中的新Xamarin Android设计器功能兼容.

  2. 仔细检查在Xam​​arin首选项中是否选择了Java JDK 8:

  3. 安装Android SDK Build-tools 24.0.1或更高版本.

  4. (可选)卸载旧版Android SDK Build-tools 24,其中包含以下错误aapt:

替代方案:

如果您不想更新到Java JDK 8,则可以改为执行以下操作之一.

  • 通过Android SDK管理器卸载所有Android SDK Build-tools版本24及更高版本.

  • 或者将AndroidSdkBuildToolsVersionMSBuild属性设置为早期版本.例如,如果您还安装了版本23.0.3,则可以<PropertyGroup>在Android项目.csproj文件的top 元素中添加以下行:

    <AndroidSdkBuildToolsVersion>23.0.3</AndroidSdkBuildToolsVersion>
    
    Run Code Online (Sandbox Code Playgroud)

(另请参阅https://releases.xamarin.com/technical-bulletin-android-sdk-build-tools-24/.)


其他背景信息

2016年7月25日更新:

谷歌现已发布Android SDK Build-tools 24.0.1.该版本修复了版本24中存在的错误aapt.


2016年7月14日更新:

不支持的major.minor版本52.0

事实证明,此错误消息是由与Java JDK的不兼容而不是Xamarin.Android引起的:Android SDK Build-tools版本24需要Java JDK 1.8,而早期版本仍然与Java JDK 1.7兼容.(这类似于关于同一错误的旧答案.)


2016年6月16日更新:

Android SDK Build-tools版本24的非预览版现已在Android SDK Manager中提供.Xamarin.Android也不兼容该版本.


2016年4月12日的信息:

SDK Build Tools版本:24 rc2

"构建工具版本"看起来可能是问题所在.Xamarin.Android尚未与Android SDK Manager中"预览频道"的"24 rc2"Build-tools版本兼容.您可以使用Android SDK Manager卸载该预览版本并安装一个非预览版本的Build-tools(例如23.0.3).

  • 谢谢!我正在从这个问题上撕下我的头发 (5认同)

Ala*_*ark 50

版本52.0这里指的是JDK,在这种情况下涉及JDK 8的特定版本.

Xamarin.Android 7.0要求 JDK 1.8 使用Android Nougat(API 24)API.如果定位较早的Android API级别,您可以继续使用早期版本的JDK:

此外,在Android设计器中使用自定义控件需要64位版本的JDK .

最简单的选择是安装64位版本的JDK 1.8,因为它向后兼容所有以前的API级别,并支持新的Android设计器功能.

(与JDK 1.8的一个不幸的复杂情况是与Android SDK中包含的过时版本的Proguard 兼容.目前,当尝试使用Proguard或Multidex功能时,这将导致错误"不支持的类版本号[52.0]"在Xamarin.Android见 44187,我建议你上的是Android的船只在默认版本的一侧安装这个,只需重命名现有的文件夹到别的东西,并添加ProGuard的新版本.)android-sdk\tools\proguard

  • 感谢您提供版本信息.Build Tools Version看起来可能是问题:"24 rc2".Xamarin.Android尚未与Android SDK Manager中"预览频道"的构建工具版本兼容.您可以使用Android SDK Manager卸载该预览版本并安装一个非预览版本的Build-tools(例如23.0.3). (4认同)
  • 你能不能请...帮助>关于>显示详细信息并复制Xamarin.Android部分的内容好吗? (2认同)

Edv*_*lva 8

解!

将Java SDK更改为1.8.x. 重新启动Visual Studio后,运行"Clean Solution","Build"并开心!

在此输入图像描述


小智 5

下载最新的JDK并安装,

然后去:

  • VS2015工具>选项> Xamarin并将java更改为最新的JDK位置.
  • Xamarin Studio:工具 - >选项 - > SDK位置

希望这可以帮助.