O Android N requer que o IDE seja executado com Java 1.8 ou posterior?


117

Meu XMLlayout não está renderizando com esta mensagem de erro. Já estou usando o Java 8.

insira a descrição da imagem aqui

Também usando as ferramentas de compilação mais recentes do Gradle.

android {
    compileSdkVersion 'android-N'
    buildToolsVersion 24.0.0 rc1
    ...
}

Erro XML -

insira a descrição da imagem aqui


2
Existem todos os tipos de problemas de renderização com o Android Studio. Eu sugiro que você forneça um exemplo reproduzível mínimo . Nesse caso, isso incluiria o arquivo de layout e o erro específico.
CommonsWare

@CommonsWare Eu atualizei a imagem de erro XML. Instalar um JDK compatível me redirecionou para configurar etapas que já fiz.
mjosh

1
Tive que mudar para buildToolsVersion '24 .0.0 rc1 ', a documentação estava faltando as aspas.
Phyrum Tea

@PhyrumTea Não cometeu o erro desaparecer.
mjosh de

1
Finalmente, quando tentei construir e executar o projeto, ele falhou com Directory cannot have its readable permission cleared for everybody. Aparentemente, é um bug conhecido e o Google está trabalhando nisso.
mjosh

Respostas:


187

Recebi o mesmo erro que você descreveu, mas no OS X. Sei que isso pode não resolver o seu problema (porque não sei o equivalente para o Windows), mas como isso não é específico do sistema operacional, estou deixando a solução para qualquer colega do OS X lá fora. Edite o arquivo /Applications/Android\ Studio.app/Contents/Info.pliste remova a versão 1.6 (no meu caso), você pode colocar 1.6+, 1.7+ ou 1.8, como preferir. O meu acabou assim

...
<key>JVMVersion</key>
<string>1.7+</string>
...

Esteja ciente de que há uma incompatibilidade com arrastar e soltar com as versões de java 1.8_60 a 1.8_75 ( IDEA-146691 ) que o IDE relatará assim que você alterar a versão com sucesso.

Para usuários não terminais

  1. Encontre seu Android Studio.apparquivo. Se estiver no dock, você pode clicar com o botão direito e escolher Options > Show in Finder.
  2. Clique com o botão direito e escolha Show package content.
  3. Navegue até o arquivo mencionado ( Contents/Info.plist).
  4. Edite o arquivo com seu editor de texto favorito.

11
Isso mudará a máquina virtual em que o Android Studio é executado. No meu OSX, o valor original era: <key> JVMVersion </key> <string> 1.6 *, 1.7 +, 1.8 </string> E o novo valor é: <key> JVMVersion </key> <string> 1.8 </ string>
santhyago

8
Funciona! Obrigado por esta solução. A questão é: por que o Google deseja que seus desenvolvedores percam seu tempo com essas questões?
Kotik_o

3
Obrigado por resolver a falta de documentação do Google :). Eu me pergunto por que essa instrução não está aqui: developer.android.com/intl/pt-br/preview/setup-sdk.html#java8 (Este é o link exibido no android studio).
Totalys

7
Funciona bem!! Infelizmente, ao atualizar o Android Studio (o que acabei de fazer para a versão mais recente), ele redefine o arquivo Info.plist, então tenho que repetir as etapas novamente para alterar minha JVMVersion: <key>JVMVersion</key> <string>1.8</string>tão irritante Android Studio!
Micro

3
O Android Studio 2.2 usa <string> 1.8 *, 1.8 + </string>.
jmnwong de

147

Clique na letra N, ao lado do ícone do Android na janela de visualização e selecione API de nível 23 ou inferior. Isso deve resolver tudo.

Primeira linha de ícones na janela rpeview


25
Mas eu quero visualizar em N, não em API 23.
mjosh

3
Eu tive o mesmo problema no meu mac. reduzir o nível da API de 24 para 23 funcionou para mim.
salman

3
não uma resposta, siga a resposta marcada como certa
Pavneet_Singh

Esta não é uma resposta. Isso é simplesmente ignorar o ambiente problemático.
abril de

Bem feito. Sim, resolveu meu problema. Obrigado. :)
arango_86

63

Variáveis ​​de set JDK_HOMEe JAVA_HOMEambiente, no meu caso C:\Program Files\Java\jdk1.8.0_60.

insira a descrição da imagem aqui

Verifique a versão do Java em Help > About. Ele deve mostrar a versão do JRE que você acabou de definir.

insira a descrição da imagem aqui

É isso, agora você pode visualizar seu layout no N.


1
Eu fiz o que você disse, mas quando ajudo-> sobre isso ainda aponta para o meu antigo jdk. Por que é que?
The_Martian

1
Tenho JRE: 1.8 (em cerca de). No entanto, não consigo construir aplicativos voltados para a v24. > compileSdkVersion 'android-24' requires JDK 1.8 or later to compile.
Zapnologica

1
@The_Martian você precisa reiniciar seu computador.
squeeish de

1
No Mac OS, removo minha versão antiga do jdk. Depois disso, o Android Studio escolhe a última versão
lopez.mikhael

1
@lopez.mikhael que na verdade é a única coisa que funcionou para mim no final. Mudei todas as configurações possíveis que pude encontrar, configurei tudo exatamente como deveria, continuei recebendo o erro. No final, movi os diretórios jdk mais antigos para um subdiretório que denominei old_jdks na pasta JavaVirtualMachine. Tudo funciona bem agora.
zgc7009

27

Para usuários de Mac com esse problema (estou executando o OS X 10.11.5 e o Android Studio 2.1.2), veja como você pode resolvê-lo:

Atualmente, a versão Mac do Android Studio é executada com Java 6 (não necessariamente a mesma que a versão JDK do aplicativo), porque Java 6 tem melhor renderização de fontes do que Java 7 e 8, e isso aparentemente é mais importante do que renderizar seu layout.

Em primeiro lugar, certifique-se de ter o JDK 8 instalado .

Em seguida, execute os seguintes comandos:

$ export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk
$ open /Applications/Android\ Studio.app/

Você pode precisar alterar o 91no jdk1.8.0_91.jdkpara uma versão diferente. Você pode ver quais versões do JDK você tem com:

$ ls /Library/Java/JavaVirtualMachines/

Infelizmente, esse método requer a abertura do aplicativo no terminal, mas você sempre pode criar um script para ele.

Mais informações

Edit: E se você realmente não quiser abri-lo no terminal:

  1. Crie um AppleScript com conteúdo: do shell script "export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk; open /Applications/Android\\ Studio.app/"
  2. Arquivo> Salvar Escolha o formato de arquivo Aplicativo . Salve em algum lugar.
  3. Se você deseja alterar o ícone, clique aqui.
  4. Arraste o aplicativo para a sua barra de lançamento, se desejar.

quando tento executar o script, obtenho: error "sh: /usr/local/bin/studio: No such file or directory" number 127alguma forma de consertar? quando eu executo do terminal, ele funciona perfeitamente
Daniele

@Daniele Desculpe, esqueci que criei outro script de shell para isso. O AppleScript deve ter os mesmos comandos acima. Veja minha resposta atualizada.
wumbo

5

Eu encontrei o mesmo problema.

Instalei o jdk1.6, jdk1.7, jdk1.8 e implantei o Studio como você fez.

Minha solução é desinstalar o jdk1.6 e o ​​jdk1.7, deixe apenas o jdk1.8

sudo rm -rf ${path to jdk1.6}
sudo rm -rf ${path to jdk1.7}

Isso é tudo.


é seguro fazer
Micro

@MicroR Se os outros softwares não dependeram do jdk1.6 e do jdk1.7, acho que é seguro.
youngwind

Esta solução resolveu o problema para mim. Essa forma de desinstalação é segura e é a recomendada pela Oracle ( docs.oracle.com/javase/8/docs/technotes/guides/install/… )
Showpath

2

Estou usando o Ubuntu 14.04 e estava enfrentando um erro semelhante, com a diferença de que não tenho NDK. Minha solução foi, depois de configurar o Java 8 na definição do projeto, reiniciar o Android Studio, nada mais.

Verifique a versão do Java do sistema, no console "java -version", a saída deve dizer algo assim

java version "1.8.0_91"

Eu defini JAVA_HOME = "/ Library / Java / JavaVirtualMachines / jdk1.8.0_91.jdk / Contents / Home" STUDIO_SDK também deve ser "/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home"?
mythicalcoder

@Maven teoricamente, você pode definir a variável STUDIO_SDK que será o caminho do SDK para executar o Android Studio (como dito nos parâmetros de configuração tools.android.com/tech-docs/configuration do Studio ). No entanto, no meu caso, não configurei essa variável e o IDE está funcionando conforme o esperado.
Sergio A Guzmán

Você está certo. Tentei coisas diferentes. Na verdade, era o problema de 1.8 não conectado corretamente. Isso resolveu stackoverflow.com/a/35935433/2369867 . Obrigado.
mythicalcoder

2

Tive o mesmo problema com Ubunutu. O problema não era rodar o IDE com Java8.

Corrigi-lo com a atualização do programa java padrão do sistema operacional, usando:

sudo update-alternatives --config java

E escolher o caminho Java8 relevante.


1

Eu enfrentei o problema "Android N requer que o IDE seja executado com Java 1.8 ou posterior." O erro continuou aparecendo apesar de ter sido definido C:\Program Files\Java\jdk1.8.0_92como o JDK do projeto no File > Project Structure.

Eu resolvi isso atualizando JAVA_HOME em minhas variáveis ​​de ambiente de C:\Program Files\Java\jdk1.7.0_67para C:\Program Files\Java\jdk1.8.0_92. Quando fiz isso e reiniciei o Android Studio, o modo de design tornou-se disponível.

SO: Windows 10

Android Studio: 2.1.2


1

Resolvi desta forma. (AS + MAC OX El Capitan)

  1. Atualizando ferramentas do SDK> Ferramentas da plataforma Android SDK
  2. Vá para Ajuda> Editar propriedades personalizadas> Uma caixa de diálogo solicitará (pressione sim) e escreva

    JVMVersion=1.8 

Em seguida, feche totalmente o Android Studio e recarregue o projeto



0

Meu problema era que o Android N estava "parcialmente instalado".

Minha solução foi ir para - Preferências / Aparências e comportamento / Configurações do sistema / SDK do Android e verificar o Status. Se estiver "parcialmente instalado", você deve desinstalar e reinstalar. (Desmarque a caixa de seleção e clique em aplicar; ele irá desinstalar; então você pode marcar a caixa e instalá-lo novamente) Funcionou para mim. Se você for para uma versão anterior (como a 23), terá que alterar a variável buildToolsVersion para "23.0.0" no build.gradle.


1
O meu ainda diz "parcialmente instalado" após a reinstalação.
Andrew

O meu também "parcialmente instalado" após a reinstalação. @Andrew você achou alguma solução depois?
mythicalcoder

Para mim, @Maven descobriu que meu problema era que eu não estava selecionando a variante de compilação correta quando tentei compilar o aplicativo.
Andrew

0

Eu estava enfrentando o mesmo problema recentemente. Tente alterar o nível de visualização da API para 23 ou inferior. Isso funcionou para mim.


0

Eu havia enfrentado o mesmo problema. Certifique-se de que está renderizando o layout XML para a versão compilada do SDK (não deve ser maior). Significa que você enfrentará isso se estiver compilando o código usando o Targeted SDK versão 23 e tentando renderizar o XML no SDK versão 24.


0

Há várias coisas a serem lembradas ao definir o STUDIO_JDK no Mac OS:

  • por padrão, o Java 1.6 da Apple é usado para iniciar o Android Studio
  • quando o STUDIO_JDK é definido como Java da Oracle, ele será usado pelo Android Studio para executar

A diferença entre os dois é que o Java IMO da Apple fornece suavização de fontes mais agradável e melhor no IDE.

Uma resposta aqui está fazendo referência a um bug no Android Studio em relação ao antialiasing de fontes. O tíquete já está fechado, mas a renderização ainda é diferente para Apple Java e Oracle SDK (eu tenho v1.8.0_102). E o primeiro ainda tem melhor percepção do que o anterior.


0

tente usar no projeto Java 1.8 - baixe a última versão do JDK e instale-a (se JSK estiver ausente)

Em seguida, adicione a build.gradle estas linhas android {... // Configure apenas para cada módulo que usa recursos da linguagem Java 8 // (em seu código-fonte ou // por meio de dependências). compileOptions {sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8} // Para projetos Kotlin kotlinOptions {jvmTarget = "1.8"}}


-1

máquina: windows8 64 bits no meu caso, o jdk1.7 que instalei era de 32 bits, portanto, estava usando o studio.exe (32 bits), portanto, mesmo quando baixei o novo jdk1.8 (64 bits), a instância do studio que estava usando (32 bits) não conseguiu t detectá-lo, mas quando desinstalei o jdk mais antigo e tentei executar novamente o studio.exe, disseram-me para instalar um jdk de 32 bits. então executei studio64.exe e funcionou sem problemas. certifique-se de ter o caminho correto em suas variáveis ​​de ambiente. saúde android N


-1

Certifique-se de ter instalado o jdk para x64 e não x84 ao iniciar o Android Studio (x64)

insira a descrição da imagem aqui

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.