Major.minor versão 52.0 sem suporte ao renderizar no Android Studio


106

Quando tento renderizar uma visualização de layout no Android Studio, recebo o erro:

Major.minor versão 52.0 não suportada


Você deve indicar o sistema operacional e a versão do Java. Atualize para uma versão mais recente do Java. Se estiver no Debian, certifique-se de usar o Debian Stretch (8.9, Java 8) ao invés do Debian Jessie (8.1, Java 7).
jww

Respostas:


99

Verifique se você JAVA_HOMEdeseja usar o jdk 1.8

Verifique também: o parâmetro no Android Studio para alterar em

Arquivo-> Outras configurações-> Estrutura do projeto padrão-> SDKs


4
Olá, tenho o jdk1.8 instalado e "vinculado" na estrutura do projeto e o problema ainda acontece
Kotik_o

Sua resposta é boa, mas talvez acrescente que, ao abrir a Estrutura do Projeto, você terá uma visão geral dos problemas atuais, como a versão JDK.
jobbert

1
Obrigado; apenas instalar o JDK 8 e configurá-lo na estrutura de projeto padrão funcionou para mim.
pipedreambomb

1
No OSX, configurei JAVA_HOME para / Applications / Android Studio.app/Contents/jre/jdk/Contents/Home, resolvendo o problema.
Zhang Buzz

Descobri que a configuração JAVA_HOMEnão é necessária, mas usar File->Project Structureé. Além disso, você pode definir o valor para 'Usar JDK incorporado'.
ThomasW

70

Este é um bug no Android Studio. Normalmente você obtém o erro: versão principal.minor não suportada 52.0

SOLUÇÃO ALTERNATIVA: se você instalou o Android N, altere a versão de renderização do Android por uma mais antiga e o problema desaparecerá.

SOLUÇÃO: Instale o Android SDK Tools 25.1.3 (ferramentas) ou superior

insira a descrição da imagem aqui


Hahaha quão simples é isso ?? E aqui eu pensei que iria
gastar

12
Onde está esta janela de visualização? O item de menu My View \ Tool Windows \ Preview está desativado.
Lorek de

Estou usando o Eclipse 4.5.2, o Android SDK Tools é 24.4.1 e o ADT é 23.0.7. Eu tenho o mesmo erro. Como devo resolver isso?
Dr.jacky 01 de

@ Mr.Hyde Você está usando o JDK 1.8?
rm8x

você pode ser mais específico? Como posso mudá-lo? Quais comandos?
João Pimentel Ferreira

41

Já fiz tudo, configurando JAVA_HOME, JAVA8_HOME, ... e sempre tive o erro. Para mim, a solução foi definir a versão 2.1.0 do gradle para funcionar com Jdk 1.8.0_92 e android studio 2.11

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

1
Eu pesquisei por 2 horas para resolver esse problema. Você salvou minha vida!
Parque Soohwan de

SIM! Isso também resolveu para mim, nenhuma das outras respostas sugeridas funcionou. Tive o problema em um projeto que tinha alguns meses e quando tentei abri-lo em um novo computador com Android Studio novo.
Mattias Petter Johansson

Isso funcionou para mim, obrigado .. !! Mas por que me deu erro. Seguindo o caminho de classe, configurei o caminho de classe 'com.android.tools.build:gradle:2.3.0-alpha2'
Parin Parikh

36

Para aqueles de vocês, que ainda estão enfrentando isso. Tive esse problema depois de fazer upgrade para o Android Studio para 2.1.2. Fiquei preso neste problema por cerca de uma hora, tentei estas soluções:

  1. multidexEnabled true
  2. aumentando a memória para o thread deamon
  3. atualizado para Java 8

Verifiquei novamente os scripts do Gradle e encontrei o seguinte:

 compileSdkVersion 23
 buildToolsVersion "24.0.0"

alterado para:

compileSdkVersion 23
buildToolsVersion "23.0.3"

Não sei como isso causou o erro, mas funcionou para mim. Por favor, deixe-me saber como isso funcionou se você souber a resposta. obrigado


Obrigado. Isso resolveu o problema que tive ao compilar meu projeto Android.
stevehs17

A atualização do Java 8 era tudo que eu precisava
rm8x

28

Major.minor versão 52.0 não suportada

Quando um JDK superior é usado para compilação, ele cria um arquivo de classe com uma versão superior e quando um JDK inferior é usado para executar o programa, ele descobriu que a versão superior do arquivo de classe não é suportada no nível de JVM e resulta em java.lang.UnsupportedClassVersionError.

Como consertar

  • Aumente a versão JAVA que você está usando para executar seu programa

Você pode seguir alguns truques

  • Chamar classpath da versão estável 'com.android.tools.build:gradle:2.1.0' // 2.3.0

Configurando o Gradle

Para habilitar os recursos da linguagem Java 8 e Jack para seu projeto, digite o seguinte no arquivo build.gradle de nível de módulo:

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

A cortesia vai para recursos da linguagem Java 8

Basta selecionar "API 23: Android 6.0" na seção de visualização.

insira a descrição da imagem aqui


@fantasy meu prazer.
IntelliJ Amiya

Tive que diminuir o gradle e incluir as opções de jack Java. Porém ainda não entendo porque o erro acontece e como será resolvido no futuro. Tenho tudo atualizado para as versões mais recentes: /
htafoya

25

Se você está vendo este erro e acabou de atualizar para o Android Studio 2.2+, precisa atualizar seu JDK nas opções de "Estrutura do projeto".

No OSX, pode ser encontrado em File > Project Structure > SDK. Ou na tela de boas-vindas em Configure > Project Defaults > Project Structure.

Selecione a Use the embedded JDK (recommended)opção em vez de usar seu próprio JDK.

Os documentos do Google ainda não foram atualizados para refletir essa mudança. Consulte: http://tools.android.com/tech-docs/configuration/osx-jdk


7

No meu caso, tive que alterar as dependências do build.gradlearquivo para:

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

(originalmente era 2.2.2 ) Acho que isso foi gerado quando várias pessoas trabalharam no mesmo projeto com versões diferentes do gradle. Portanto, verifique sua versão do Gradle e edite este arquivo corretamente.

Boas vibrações!


7

Com a versão mais recente, é recomendável mudar para o JDK incorporado como na imagem abaixo, e isso resolverá seu erro

resolver o erro major.minor versão 52.0


Não me importei com toda a movimentação com diferentes versões de SDK e JDK recomendadas aqui, mas estava prestes a fazer isso e descobri a opção "Usar JDK incorporado", que funcionou. Eu ia postar essa solução e vi a sua. Esta deve ser a solução correta, IMHO.
David Gish

Igual a @DavidGish, esta solução acertou em cheio
Jeremy Piednoel

4

Também recebi a mesma mensagem de erro de ' Unsupported major.minor version 52.0 ' ao executar ./gradlew makeJar para criar uma biblioteca jar pelo Android Studio 2.2.3.

Depois de mover para baixo a versão do plug-in gradle no build.gradle de 2.2.2 para 2.1.3 , a mensagem de erro desapareceu e tudo funcionou bem. classpath 'com.android.tools.build:gradle: 2.1.3 '

Não sei como a versão superior do plugin gradle causou o erro, mas funcionou para mim. por favor, deixe-me saber como isso funcionou se você souber a resposta, obrigado


muito obrigado por apontar 2.1.3. resolveu meu problema!
artman de

4

1, certifique-se de que a versão JVM do Gradle Gradle insira a descrição da imagem aqui

2 、 certifique-se de que ProjectSettings SDKs Veriosn insira a descrição da imagem aqui


3

Para mim, atualizar o Android Studio para a versão mais recente resolveu o problema.


3

Tentei encontrar uma solução para este problema. Tentei a maioria das soluções mencionadas neste tópico. No entanto, não tenho certeza de por que isso estava ocorrendo. Provavelmente um bug no Android Studio. De qualquer forma, foi isso que resolveu o problema:

No nível do aplicativo build.gradle, removido:

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

substituído por:

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

2

Isso ocorre devido à versão incompatível do java que você está usando no android studio e à versão do java que foi usada com o seu projeto importado. Vá para. File->Project structure->Change jdk 1.7 to jdk 1.8Depois disso, vá para File->click on Invalidate cachee reinicie. Espero que isto ajude..

E altere o caminho de classe de dependência no arquivo 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

Mudar para Java SDK para Java 8 funcionou para mim. Configurações do Android Studio: Arquivo -> outras configurações -> Estrutura do projeto padrão -> Localização do JDK -> jdk1.8.0_71.jdk / Conteúdo / Home


1

Certifique-se de fazer uma construção limpa após alterar uma versão do Java. Acontece que o Android Studio faz algum trabalho quando você troca o JDK, mas não limpa a área de trabalho e cria confusão¯\_(ツ)_/¯


1

Este erro "Unsupported major.minor version 52.0" refere-se ao compilador java, embora a string "major.minor" seja muito semelhante ao formato da versão Android SDK.

Na plataforma Windows, além de atualizar o jdk para 1.8, certifique-se de que JAVA_HOME aponte para onde seu jdk 1.8 está instalado (isto é, C: \ Arquivos de programas \ Java \ jdk1.8.0_91).


1

Tive que atualizar a versão Java para JDK 8 em Jenkins-> Gerenciar Jenkins-> Configuração de ferramenta global-> JDK .


1

Mudar para Java SDK para Java 8 e funcionou para mim

Configurações do Android Studio:

Arquivo> outras configurações> Estrutura do projeto padrão> Local JDK> jdk1.8.0_71.jdk / Conteúdo / Home insira a descrição da imagem aqui


Primeiro respondi a @intellij amiya e depois tive que fazer isso para realmente fazer funcionar, obrigado!
Peter P.

1

O Android Studio se comporta de forma estranha nesse caso. Mesmo que você defina a versão do JDK em Arquivo -> Estrutura do projeto -> Local do SDK, o Android Studio só usa isso para compilar os arquivos. Ao executar esses arquivos, por algum motivo, ele olha a variável PATH para descobrir onde o java está instalado.

Se você tiver uma versão anterior do java instalada em seu sistema, sua variável PATH estará apontando para essa versão anterior do java.

Portanto, você deve definir seu PATH para apontar para a mesma versão do java que definiu nas configurações de projeto do Android Studio.

Em seu ~ / .bashrc ou arquivo de perfil correspondente, adicione o seguinte:

export PATH = "/ Applications / studio.app / Contents / jre / jdk / Contents / Home / bin: $ PATH"

No meu caso, meu projeto foi configurado para usar java 1.8, mas minha instalação de todo o sistema do java foi java 1.7. Isso estava causando o problema.


0

No meu caso, minha Android SDK Build-toolsversão original é 24 e a Andoid SDK Toolsversão é 25.1.7. Eu instalo Android SDK Build-tools version 23.0.3por Andoird SDK manager.

Modifique essas 2 linhas para:

buildToolsVersion "23.0.3" compileSdkVersion 24

Então funciona!


0

Baixe o JDK mais recente e instale. Vá para Ferramentas do VS2015> Opções> Xamarin e altere o java para o local JDK mais recente


0

Além disso, se ocorrer um problema durante a execução do ./gradlewcomando, a configuração do java home no gradle.propertiesarquivo resolve este problema:

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


0

Para mim, o problema era que a versão do gradle em build.gradle não era igual à versão real do gradle que eu tinha instalado.

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

Verifique as versões do Gradle instaladas em / Contents / gradle / m2repository / com / android / tools / build / gradle / e altere o arquivo build.gradle acima com

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


0

Eu tinha obtido o mesmo erro e tinha o JDK 8 definido como JAVA_HOME. Acontece que eu tinha o Android SDK Build-tools rev 25.0.2 instalado. Eu removi isso e instalei 23.0.2, e funcionou para mim.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.