在Android Studio中渲染时不支持的major.minor版本52.0


Answers:


99

检查您JAVA_HOME是否使用jdk 1.8

还要检查:Android Studio中的参数以在处更改

文件->其他设置->默认项目结构-> SDK


4
嗨,我在项目结构中安装了jdk1.8并进行了“链接”,但问题仍然存在
Kotik_o 16-4-12

您的答案很好,但也许可以补充一点,当打开“项目结构”时,您会看到当前问题的概述,例如JDK版本。
Jobbert

1
谢谢; 只是安装JDK 8并将其设置为“默认项目结构”对我来说是有效的。
pipedreambomb

1
在OSX上,我将JAVA_HOME设置为/ Applications / Android Studio.app/Contents/jre/jdk/Contents/Home,解决了该问题。
张巴兹

我发现该设置JAVA_HOME不是必需的,但使用File->Project Structure是。您也可以将值设置为“使用嵌入式JDK”。
ThomasW

70

这是Android Studio中的错误。通常会出现错误:不支持的major.minor版本52.0

解决方法:如果您已安装Android N,请使用较旧的Android渲染版本进行更改,该问题将消失。

解决方案:安装Android SDK Tools 25.1.3(工具)或更高版本

在此处输入图片说明


哈哈哈,那有多简单?在这里,我还以为是在几个小时值得研究的.. /表情擦拭额头到拿不动这个错误
Jacksonkr

12
此预览窗口在哪里?我的视图\工具Windows \预览菜单项被禁用。
罗瑞克

我正在使用Eclipse 4.5.2,Android SDK Tools是24.4.1,ADT是23.0.7。我有同样的错误。我应该如何解决?
Dr.jacky '16

@ Mr.Hyde您正在使用JDK 1.8吗?
rm8x

你可以说得更详细点吗?我该如何更改?哪些命令?
若奥·皮门特尔·费雷拉

41

我已经全部完成,设置了JAVA_HOME,JAVA8_HOME,...,而且我总是出错。对我来说,解决方案是将gradle版本2.1.0设置为与Jdk 1.8.0_92和android studio 2.11一起使用

dependencies {
    classpath 'com.android.tools.build:gradle:2.1.0'
    //classpath 'com.android.tools.build:gradle:2.+'
}

1
我已经用Google搜索了2个小时来解决这个问题。你救了我的命!
Soohwan Park

是!这也为我解决了问题,其他建议的答案均无效。我在几个月前的一个项目中遇到了问题,当我尝试在装有新版Android Studio的新计算机上打开它时。
马蒂亚斯·佩特·约翰逊

这对我有用.. !! 但是为什么它给我错误。在类路径之后,我将类路径设置为“ com.android.tools.build:gradle:2.3.0-alpha2”
Parin Parikh

36

对于仍面临此问题的你们中的那些人。我将Android Studio升级到2.1.2后遇到了这个问题。我在这个问题上停留了大约一个小时,我尝试了以下解决方案:

  1. multidexEnabled是
  2. 增加守护线程的内存
  3. 升级到Java 8

我仔细检查了gradle脚本,发现了这一点:

 compileSdkVersion 23
 buildToolsVersion "24.0.0"

变成:

compileSdkVersion 23
buildToolsVersion "23.0.3"

我不知道这是怎么导致错误的,但这对我有用。如果您知道答案,请告诉我这是如何工作的。谢谢


谢谢。这解决了我编译Android项目时遇到的问题。
stevehs17'7

我只需要Java 8升级
rm8x

28

不支持的major.minor版本52.0

当使用较高的JDK进行编译时,它将创建具有较高版本的类文件,而当使用较低的JDK来运行程序时,则会发现JVM级别不支持较高版本的类文件,并导致java.lang.UnsupportedClassVersionError。

怎么修

  • 增加用于运行程序的JAVA版本

您可以遵循一些技巧

  • 调用稳定版本的 类路径'com.android.tools.build:gradle:2.1.0'// 2.3.0

配置Gradle

要为您的项目启用Java 8语言功能和Jack,请在模块级build.gradle文件中输入以下内容:

android {
  ...
  defaultConfig {
    ...
    jackOptions {
      enabled true
    }
  }
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

礼貌地使用Java 8语言功能

只需从预览部分中选择“ API 23:Android 6.0”

在此处输入图片说明


@fantasy我的荣幸。
IntelliJ Amiya

我不得不降低gradle并包括Java jack选项。但是我仍然不理解为什么会发生错误以及将来如何解决该错误。我已将所有内容更新为最新版本:/
htafoya

25

如果您看到此错误,并且刚刚升级到Android Studio 2.2+,则需要在“项目结构”选项中更新JDK。

在OSX上,可在下找到File > Project Structure > SDK。或从中的欢迎屏幕Configure > Project Defaults > Project Structure

选择该Use the embedded JDK (recommended)选项,而不使用您自己的JDK。

Google的文档尚未更新以反映此更改。请参阅:http//tools.android.com/tech-docs/configuration/osx-jdk


7

就我而言,我不得不将build.gradle文件的依赖项更改为:

dependencies { 
    classpath 'com.android.tools.build:gradle:2.1.0'
}

(最初是2.2.2)我猜这是由几个人在同一个项目中使用不同版本的gradle生成的。因此,请检查您的gradle版本并正确编辑此文件。

良好的共鸣!


7

使用最新版本,建议您切换到嵌入式JDK,如下图所示,这将解决您的错误

解决major.minor版本52.0错误


我并不在乎这里推荐使用不同的SDK和JDK版本的所有麻烦,但是我打算这么做,并发现了“使用嵌入式JDK”选项有效。我打算发布该解决方案并看到您的解决方案。恕我直言,这应该是正确的解决方案。
David Gish

与@DavidGish一样,此解决方案也得到了解决
杰里米·皮德诺尔

4

当运行./gradlew makeJar通过Android Studio 2.2.3创建jar库时,我也收到了相同的错误消息“ Unsupported major.minor version 52.0 ”。

将build.gradle中gradle插件的版本从2.2.2降到2.1.3后,错误消息消失了,并且一切正常。classpath'com.android.tools.build:gradle:2.1.3 '

我不知道更高版本的gradle插件是如何导致该错误的,但这确实帮了我大忙。如果您知道答案,请告诉我这是如何工作的,谢谢


非常感谢您指出2.1.3。它解决了我的问题!
artman

4

1,确保Gradle Gradle JVM版本 在此处输入图片说明

2,确保ProjectSettings SDK Veriosn 在此处输入图片说明


3

对我来说,将Android Studio更新到最新版本可以解决此问题。


3

我试图找到解决此问题的方法。我尝试了该线程中提到的大多数解决方案。但是,我不太确定为什么会这样。可能是Android Studio中的错误。无论如何,这就是解决问题的方法:

在应用程序级别build.gradle中,删除了:

  classpath 'com.android.tools.build:gradle:2.2.0-beta1'

替换为:

classpath 'com.android.tools.build:gradle:2.0.0'

2

发生这种情况是由于您在android studio中使用的Java版本不兼容以及与导入的项目一起使用的Java版本所致。转到 File->Project structure->Change jdk 1.7 to jdk 1.8。之后转到File->click on Invalidate cache并重新启动。希望这可以帮助..

并更改gradle文件中的依赖类路径

dependencies {
    classpath 'com.android.tools.build:gradle:2.2.3'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

1

将Java SDK更改为Java 8对我来说很有效。Android Studio设置:文件->其他设置->默认项目结构-> JDK位置-> jdk1.8.0_71.jdk / Contents / Home


1

确保在更改Java版本后进行干净的构建。事实证明,当您切换JDK时,Android Studio可以完成一些工作,但不会清理工作区并造成混乱¯\_(ツ)_/¯


1

该错误“不支持的major.minor版本52.0”是指Java编译器,尽管字符串“ major.minor”看起来与Android SDK版本格式非常相似。

在Windows平台上,除了将jdk更新到1.8之外,请确保JAVA_HOME指向jdk 1.8的安装位置(即C:\ Program Files \ Java \ jdk1.8.0_91)。


1

我必须在Jenkins-> Manage Jenkins-> Global Tool Configuration-> JDK中将 Java版本更新为JDK 8 。


1

将Java SDK更改为Java 8并为我工作

Android Studio设置:

文件>其他设置>默认项目结构> JDK位置> jdk1.8.0_71.jdk / Contents / Home 在此处输入图片说明


我首先做了@intellij amiya的回答,然后必须这样做才能真正使它起作用,谢谢!
Peter P.

1

在这种情况下,Android Studio表现异常。即使您在文件->项目结构-> SDK位置中设置了JDK版本,Android Studio仍仅使用此版本来编译文件。当运行这些文件时,出于某种原因,它会查看PATH变量以查找java的安装位置。

如果您的系统上安装了Java的较早版本,则PATH变量将指向该Java的较早版本。

因此,您必须将PATH设置为指向与Android Studio项目设置中设置的Java版本相同的Java。

在〜/ .bashrc或相应的配置文件中,添加以下内容:

导出PATH =“ / Applications / studio.app / Contents / jre / jdk / Contents / Home / bin:$ PATH”

在我的情况下,我的项目配置为使用Java 1.8,但是我在系统范围内安装的Java是Java 1.7。这是造成问题的原因。


0

就我而言,我的原始Android SDK Build-tools版本是24,Andoid SDK Tools版本是25.1.7。我安装Android SDK Build-tools version 23.0.3由Andoird SDK管理器。

将这两行修改为:

buildToolsVersion "23.0.3" compileSdkVersion 24

然后就可以了!



0

另外,如果在执行./gradlew命令时在gradle.properties文件中设置java home时出现问题,则可以解决此问题:

org.gradle.java.home=/usr/java/jdk1.8.0_45/


0

对我来说,问题是build.gradle中的gradle版本与我安装的实际gradle版本不同。

dependencies { classpath('com.android.tools.build:grade:2.2.0') { force = true}

在/ Contents / gradle / m2repository / com / android / tools / build / gradle /中检查已安装的gradle版本,并使用以下命令更改上述build.gradle文件

classpath('com.android.tools.build:grade:1.5.1') 或<>


0

我遇到了相同的错误,并将JDK 8设置为JAVA_HOME。原来,我已经安装了Android SDK Build-tools rev 25.0.2。我删除了它并安装了23.0.2,它对我有用。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.