首页 文章

Java Lang UnsupportedClassVersion Xamarin Studio中的错误

提问于
浏览
39

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

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 Build Tools版本:24 rc2

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

10 回答

  • 2

    这里的52.0版本是指JDK的特定版本,在这种情况下与JDK 8有关 .

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

    此外,需要64位版本的JDK才能使用custom controls in the Android designer .

    The simplest option is to install the 64-bit version of JDK 1.8 since it is backwards compatible with all of the previous API levels and supports the new Android designer features.

    (与JDK 1.8的一个不幸的并发症是 not 与Android SDK中包含的Proguard的过时版本兼容 . 目前,当尝试使用Xamarin.Android中的Proguard或Multidex功能时,这将导致错误"Unsupported class version number [52.0]" . 请参阅44187 . 我建议您将此安装在Android发布的默认版本 android-sdk\tools\proguard 的旁边 . 只需将现有文件夹重命名为其他内容并添加新版本的proguard . )

  • 1

    不支持的major.minor版本52.0

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

    Steps to update

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

    • 仔细检查在Xamarin首选项中是否选择了Java JDK 8:

    • Visual Studio :工具>选项> Xamarin> Android设置> Java开发工具包位置 .

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

    • Xamarin Studio (在Mac上):Xamarin Studio>首选项>项目> SDK位置> Android> Java SDK(JDK) .

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

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

    • (可选)卸载具有a bug in aapt的旧版Android SDK Build-tools 24:

    Alternatives

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

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

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

    <AndroidSdkBuildToolsVersion>23.0.3</AndroidSdkBuildToolsVersion>
    

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


    其他背景信息

    2016年7月25日更新:

    谷歌现已发布Android SDK Build-tools 24.0.1 . 该版本修复了版本24中存在的bug in 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兼容 . (这类似于older answers关于同样的错误 . )


    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中“预览 Channels ”的“24 rc2”Build-tools版本兼容 . 您可以卸载该预览版本并安装其中一个非预览版本使用Android SDK Manager的Build-tools(如23.0.3) .

  • 64

    解!

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

    enter image description here

  • 1

    下载最新的JDK并安装,

    然后去:

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

    • Xamarin Studio:工具 - >选项 - > SDK位置

    希望这可以帮助 .

  • 5

    正如 Brendan Zagaeski 所述,由于使用预览版本的构建工具而产生了一个问题

    请按照以下步骤操作

    • 打开SDK管理器

    • 选择版本为24rc2的构建工具(请确保仅选择此项目)

    • 点击卸载

    UPDATE :详细答案可以在这里找到https://stackoverflow.com/a/37827161/5073734

    更新2016年11月我的一些朋友告诉我,它也可以发生在nuget包中 . 如果上述方法无法解决您的问题,请尝试重新安装nuget软件包 .

  • 50

    确保如果在VS中,你去
    项目>项目名称属性>应用程序
    您已在Android SDK中下载了所有选定的版本

    让's say that you have only installed the API' s用于Android 6.0(等级23)和5.1.1(等级22),但是您将最低Android设置为低于等级16的等级 . 它将给出java.lang.UnsupportedClassVersionError:错误 .

    只需确保使用正确的API级别

  • 0

    我现在意识到这有点老了,但我也遇到了这个问题,我在网上发现的任何东西都无法解决它 . 最后,我尝试卸载并重新安装我安装的一些nuget包(SQLite.Net) . 之后编译 . 希望这对那些已经用尽这些更常见的解决方案的人有用 .

  • 0

    几分钟后我就遇到了同样的问题 . 确保拍摄解决方案:a)转到工具>选项> Xamarin> Android设置> Java开发工具包位置>将其更改为JDK 1.8确保指向当前的Java版本

    100%工作

  • 8

    我遇到了同样的问题,我的系统安装了java版本1.7 . 我在系统中安装了1.8版本 .

    更新了jdk工具 - >选项 - > Xamarin-> android设置 - >(java开发工具包位置)的路径设置新jdk版本的jdk路径

    再次重建项目,问题解决了 .

  • 0

    删除版本24,下载并安装JDK 1.8_112,将Java开发工具包更改为JKD 1.8_112(现在可以在程序文件中找到而不是程序文件x86)并重建项目对我来说很有用 .

相关问题