O Android Studio de repente não consegue resolver símbolos


207

O Android Studio 0.4.2 estava funcionando bem e hoje eu o abri e quase tudo estava vermelho e a conclusão automática parou de funcionar. Olho para as importações e o AS parece estar me dizendo que não consegue encontrar o android.support.v4 de repente (oferecendo-me a opção de remover as importações não utilizadas). ( android.support.v7 parece estar bem).

Coisas que tentei:

  • Reconstruindo o Projeto
  • Limpando o projeto
  • Sincronizando com arquivos Gradle
  • Fechando o Projeto, fechando o AS e reiniciando / reabrindo
  • Arquivo> Invalidar caches / reiniciar
  • Examinando Lint, não vi nada óbvio
  • A verificação dupla de todas as bibliotecas de suporte está atualizada no gerenciador do SDK
  • Examinando meu Build.gradle, embora não haja alterações e seja o mesmo de sempre, do jeito que estava funcionando o tempo todo.

Aqui está, caso seja relevante:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.7.+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 19
    buildToolsVersion '19.0.0'

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 19
    }
}

dependencies {
    compile 'com.android.support:support-v4:19.0.0'
    compile 'com.android.support:gridlayout-v7:19.0.0'
    compile 'com.android.support:appcompat-v7:19.0.0'
    compile 'com.google.android.gms:play-services:4.0.30'
    compile project(':libraries:facebook')
    compile files('libs/core.jar')
}

Quando clico em "Sincronizar com o Gradle" e abro "Configurações do projeto", recebo um erro vermelho ao dizer que tenho referências de bibliotecas duplicadas e para remover as não utilizadas. insira a descrição da imagem aqui

Meu projeto compila e executa bem, mas eu realmente preciso do preenchimento automático funcionando !! Alguém tem alguma sugestão?

insira a descrição da imagem aqui


66
Toda atualização do Android Studio quebra projetos, já estou cansada disso. Por que eles não podem esperar e lançar uma versão utilizável.
— Konrad Morawski

3
Antes de limpar ou remover qualquer arquivo, leia esta resposta primeiro. Isso pode resolver seu problema. stackoverflow.com/a/19223269/513413
— Hesam

16
"Invalidar caches / reiniciar" funcionou para mim.
— 11135 Eagle_Eye

1
Teve o mesmo problema e corrigido com a resposta sobre este SO postar stackoverflow.com/a/30828772/1550233
— johnw182

aceitar essa resposta para que os usuários não vai apagar tudo manualmente stackoverflow.com/a/22901534/7767664
— user924

Respostas:


238

Você já desceu a lista da maioria das coisas úteis, mas pode tentar:

  • Sair do Android Studio
  • Faça backup do seu projeto
  • Exclua todos os arquivos .iml e a pasta .idea
  • Relance o Android Studio e reimporte seu projeto

A propósito, as mensagens de erro que você vê na caixa de diálogo Estrutura do projeto são em sua maioria falsas.

ATUALIZAR:

O Android Studio 0.4.3 está disponível no canal de atualização do canary e, esperamos, deve resolver a maioria desses problemas. Pode haver alguns problemas remanescentes; se você os vir na 0.4.3, informe-nos e tente fornecer um conjunto confiável de etapas para reproduzir, para garantir que cuidamos de todos os caminhos de código.


3
Isso funcionou para mim. Eu estava enlouquecendo com isso, um dia inteiro tentando descobrir! Obrigado pela resposta.
— Patrick Kafka

25
Para mim, bastava excluir a pasta de bibliotecas em .idea e o projeto de sincronização de imprensa com gradle.
— Gabriel Ittner 22/01

2
Eu tenho o mesmo problema com 0.8.9 e tentei todas as soluções listadas aqui sem sorte :(
— Rémy DAVID

3
Não funcionou para mim no AndroidStudio 1.2 RC. Isso é um pesadelo.
— RED_

7
Isso ainda está acontecendo em 2018 e sua resposta foi útil. Eu gostaria que isso fosse corrigido ... Aconteceu no AS 3.1.1.
— Demogorii

302

Nenhuma das coisas mencionadas anteriormente aqui realmente funcionou para mim. Mas então eu encontrei essa entrada no menu arquivo Invalidate Caches/Restartque parece ter corrigido o problema.

Eu realmente não sei o que aconteceu em segundo plano, mas quando o Android Studio foi iniciado novamente, a barra de status disse Indexing...por um minuto mais ou menos o que aparentemente fez maravilhas.

Para referência, estou usando o Android Studio 0.5.4.


2
Trabalhou para mim em 0.5.9
— Father Stack

19
Para mim, tive uma falha de energia quando o Android Studios 0.8.2 estava carregando e ele não reconhece nenhuma das minhas importações de java e tudo estava vermelho. Isso funcionou para mim, obrigado!
— Simon

2
Estou usando o android studio 1.0.2, quando abri meu projeto, estava cheio de erros em vermelho. Eu o resolvi pelo android studio -> arquivo -> invalidar chaches / restart. quando o meu projeto reiniciou, funcionou ... sem erros vermelhos
— SoftEye 28/01

4
Android Studio 1.1.0. Eu também tive uma falha de energia, e isso fez o truque.
— Phito 27/03

2
Agora, essa deve ser a resposta correta. Eu confirmei com o Android Studio 1.4 final.
— 9788 Davideas

58

Passe o link e funcionou para mim.

1.) Escolha a opção Arquivo no menu no lado superior esquerdo do android studio.

2.) Selecione a opção: "Invalidar cache / reiniciar .." Ele abrirá uma caixa de diálogo.

3.) Clique no primeiro botão com a opção: "Invalidar e reiniciar"

4.) Ele fechará o estúdio e o reiniciará. Inicie a indexação do projeto.

Resolveu o meu problema:

Arquivo -> Invalidar cache / reiniciar -> Invalidar e reiniciar

Fonte: https://www.youtube.com/watch?v=FX_gCTpqhwM


1
para Android Studio 3 ou superior: stackoverflow.com/questions/50313885/…
— user1506104

Trabalhou para mim no Android Studio 3.5.3
— flawyte 8/01

13

Android Studio 1.3

  1. Configurações do módulo aberto
  2. Clique no seu módulo no menu Módulos
  3. Na guia Propriedades , defina a Compatibilidade de Origem e Compatibilidade de Destino como sua versão java.

Eu não fiz mais nada e funcionou para mim.


Onde posso encontrar as configurações do módulo?
— bendaf

3
@bendaf Clique com o botão direito do mouse no seu módulo no explorer e selecione "Open Module Settings"
— Jason Robinson

Essas configurações também podem ser encontrados no Arquivo -> Estrutura do Projeto -> Propriedades
— ChumiestBucket

10

Para mim, foi uma entrada de construção "progaurd" no meu build.gradle. Eu removi toda a seção de compilação, depois fiz uma ressincronização e o problema foi resolvido.


Trabalhou para mim! Obrigado! Usando canary build 1.0RC 1. Usando minifyEnabled trueou minifyEnabled falsenão definindo proguardFiles.
— Kalem

Além disso, não esqueça que os projetos AndroidLibrary não executam proguard stackoverflow.com/a/10992604/665823 .
— Kalem

4

Estou usando o Android Studio 3.1.4 e estava com esse problema ao passar do ramo de desenvolvimento com um alvo de API mais baixo para outro ramo com API de destino Oreo. Tentei a primeira solução que funcionou, mas é bastante complicada, enquanto a segunda solução não resolveu o problema.

Minha solução Quando o problema voltou à tona, tentei modificar um pouco o arquivo de classificação do aplicativo o suficiente para que o AS me pedisse para sincronizar arquivos, e isso foi o que fez. Então eu apaguei a alteração.

Eu acho que o "Sincronizar projeto com arquivos Gradle" também pode funcionar, mas eu mesmo não tentei

Espero que ajude


3

Existe uma solução muito mais fácil embutida no Android Studio e, geralmente, funciona para mim sem precisar de nenhuma solução de força bruta mencionada em outras respostas - portanto, tente primeiro: insira a descrição da imagem aqui

clique no símbolo "gradle" no lado direito do Android Studio e, em seguida, na ferramenta "Atualizar todos os projetos da Gradle".


2

Pensei que eu jogaria isso lá fora também:

o que funcionou para mim foi alterar minha variante de compilação de volta para uma variante que estava funcionando anteriormente. Por alguma razão, eu havia mudado isso antes (e esqueci o porquê).

de qualquer maneira, a melhor coisa a fazer é tentar lembrar o que você mudou naquele dia (pode ser algo tão pequeno quanto limpar ou voltar a um commit anterior do git) ... etc.

também ajuda a tentar ressincronizar o gradle e forçar uma reconstrução.


1

Lutou com o mesmo problema por algumas horas esta manhã. Construir meu projeto a partir da linha de comando parece ter feito o truque para mim.

Etapas exatas -

  1. Repositório novo clonado (não há arquivos de estúdio do Android em repositório)
  2. Projeto de depuração criado a partir da linha de comando (./gradlew clean assembleDebug)
  3. Abra o Android Studio, importe projeto

Para verificar se funcionou, procure na pasta de pacotes explodidos de projetos, inspecione uma biblioteca e encontre o classes.jar. Se for expansível, tudo ficará bem.

editar - eu encontrei depois de fazer uma limpeza no estúdio Android, ele quebrou novamente. Portanto, se você precisar limpar, precisará fazer esse processo novamente.


eu não sei qual foi o problema, mas obras assembleDebug limpo Gradle e eveything é bom para agora
— Assassino

1

Nenhum desses métodos me ajudou no Android Studio 0.5.8.

Minha solução foi excluir o diretório ~ / .AndroidStudioPreview (no Ubuntu). Desculpe, não tenho ideia de onde está em outro sistema operacional. Este diretório armazena arquivos temporários e configurações do Android Studio, então eu perdi todas as minhas configurações. Mas funciona!


Trabalhou para mim também. (Android Studio 0.6.0 no sistema operacional elementar)
— rogeriolino 18/06/2014

1

Outra maneira é baixar o JDK 1.7 e alterar o caminho do Android Studio na mensagem de erro ... e escolha a pasta Home que está contida na pasta Jdk 1.7


1

Hoje tenho o mesmo problema. Corrigido alterando a localização do jdk na estrutura do projeto de \java\jdk1.7.0_05para \java\jdk1.7.0_25(que eu não sabia que existia até agora).

Estou usando o Android Studio 0.8.6.



1

Tentei limpar o projeto e invalidar o cache, nenhum dos quais funcionou. O que funcionou para mim foi comentar todas as minhas dependências em build.gradle (app), sincronizar, descomentar novamente as dependências e sincronizar novamente. Bob é seu tio.


0

Eu enfrentei um problema semelhante, mas segui as seguintes etapas no meu caso: -

1) projeto .inside na pasta .idea, abra modules.xml. 2). Verifique se há duas entradas para o mesmo arquivo iml. 3) .delete uma entrada duplicada e feche o android studio ou crie o arquivo gradle novamente.

No meu caso, funcionou. Espero que ajude


0

Eu o resolvi definindo o JDK. Recebi um pop-up dizendo que o Setup JDK quando coloquei o mouse sobre o erro.


0

Eu tive o mesmo problema, nenhuma das soluções listadas aqui funcionou. O problema foi que meus arquivos de origem não estavam na pasta correta.

A estrutura de diretórios DEVE ser:

[project]\[module]\src\main\java\[yourpackage]\[yourclass.java]


0

Finalmente descobri o que causa esse problema.

Na verdade, você deve evitar enviar a .idea/librariespasta para o seu repositório. Ele cria coisas estranhas no Android Studio, que tendem a remover todas as bibliotecas baixadas.

Se você tiver histórico de confirmação, recrie todos os arquivos de biblioteca ausentes e evite que eles sejam confirmados novamente. Caso contrário, basta remover a .ideapasta inteira e reimportá-la para o AS.


0

tente alterar seu build.gradle com estes valores:

android {compileSdkVersion 18 buildToolsVersion '21 .0.1 '

defaultConfig {
    minSdkVersion 18
    targetSdkVersion 18
}

0

Uso preferências compartilhadas, mas o Android Studio reclamou do símbolo do Editor. Então eu adicionei

import android.content.SharedPreferences.Editor;

e o símbolo está legal agora.


0

Verifique se você possui um caminho de projeto com caracteres especiais como! (ponto de exclamação).

Em um problema semelhante ao que experimentei , essa foi a causa raiz - já que muitos aplicativos Java parecem não tolerar esses caracteres especiais (por exemplo, fazer uma limpeza gradlew do terminal falharia e lançaria uma RunTimeException.). Nenhuma das outras soluções postadas online me ajudou. Mas, depois que eu removi o! do caminho e fez uma compilação limpa, o Android Studio funcionou magicamente.


0

Eu tentei de tudo listado aqui. Em seguida, verifiquei meu androidmanifest.xml. Eu tive alguns problemas estúpidos devido a renomeação de pastas e renomeações de pacotes.


0

No meu projeto com vários módulos, o problema era que a versão do "com.android.support:appcompat-v7" no módulo A era "22.0.0", mas em B - "22.2.0".

Solução : verifique se a
versão 1. das bibliotecas comuns é a mesma entre os módulos.
2. cada um dos módulos é compilado sem erros (tente criar cada um deles a partir da CLI).


0

Esteja ciente de que o nome dos arquivos e especialmente das pastas pode resultar nesse erro. Por exemplo, se você tiver uma pasta "Helpers" e o pacote para arquivos nessa pasta for "com.whatever.helpers", isso não resultará em nenhum erro de compilação, mas fará com que o Android studio falhe ao carregar os símbolos nessa pasta . Uma razão típica para isso é quando você nomeia uma pasta com a primeira letra maiúscula, confirma-a no Git e depois altera o nome da pasta para todas as letras minúsculas. O sistema Git não reconhecerá a alteração, resultando em uma discrepância entre os repositórios locais e remotos pelos quais somente os novos clones do repositório serão afetados.



0

Eu tive uma solução muito mais estranha. Caso alguém se depare com isso, vale a pena conferir seu arquivo de classificação. Acontece que, enquanto eu clonava esse git e o gradle estava em execução, ele excluiu uma linha do meu arquivo build.gradle (app).

dependencies {
     provided files(providedFiles)

Obviamente, o problema aqui era apenas adicioná-lo novamente e sincronizar novamente com o gradle.


0

Eu tive um problema semelhante quando reconstruí um arquivo aar e substitui o antigo no meu projeto pelo novo. Passei por todas as soluções aqui e nenhuma resolveu meu problema. Mais tarde, percebi que o minifyEnabled havia sido definido como true no projeto da biblioteca, o que efetivamente removeu muito código morto que não estava sendo usado no projeto da biblioteca.

Minha solução foi definir minifyEnabled como false no projeto da biblioteca, montar o aar, copiá-lo no meu projeto, invalidar caches e sincronizar o projeto de classificação e tudo funcionou bem.

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.