Pergunta

Duplicate possíveis:
Desenvolvendo para Android em Eclipse: R.java não gerando

Eu importou um projeto no meu Eclipse IDE, mas ele está me dando um erro desde arquivo R não é gerada automaticamente.

Como posso editar o arquivo R para que ele corresponda meus requisitos do projeto?

Foi útil?

Solução 3

Ok, eu fixa-lo:

Quando eu mudei manifesto para atingir 1,5 versão, milhão erros apareceu e apenas um não foi relacionada com a inexistência de classe R - em atributos arquivo de manifesto "targetSdkVersion" e "maxSdkVersion" não existia no SDK 1.5

Por causa desta classe R não foi capaz de gerar.

Outras dicas

Na outra stackoverflow pergunta , alguém respondeu isto: você deve se livrar de avisos e erros (sintaxe e links) em seus arquivos XML. Isto além de fazer um projeto / compilação limpa.

Project -.> Limpo, e escolha a opção para construir o projeto

Eu achei que isso aconteça para mim com um layout quebrado e tudo explode. Relaxe, é como aquele velho erro quando você primeiro aprendeu a programação, onde você esquecer um ponto e vírgula e ele gera uma centena de erros. Muitos pânico, pressione todos os botões, e torna as coisas piores.

Solução

  • Certifique-se de que qualquer coisa que as ligações R. para não está quebrado. Se ele está quebrado, ADK não pode regenerar R. Corrigir todos os erros em seus arquivos XML .
  • Se você de alguma forma bater em alguma coisa e criou import android.R em sua atividade, removê-lo .
  • Executar Project -> limpa . Isto irá apagar e R e BuildConfig regenerado.
  • Certifique-se de Project -.> Automaticamente construir está marcada
  • Aguarde alguns segundos para que os erros a desaparecer.
  • Se ele não funciona, tudo de exclusão dentro do gen / pasta /
  • Se ainda assim não funcionar, tente clicando com o botão direito seu projeto -> Ferramentas Android -.> Fix Propriedades do projeto

O que fazer se R não se regenera

Isso geralmente acontece quando você tem um arquivo xml quebrado.

  • Verifique erros dentro de seus arquivos XML, principalmente dentro do / res / pasta
  • Lugares comuns são / layout / e / valores / especialmente se você mudou um deles recentemente
  • Verifique AndroidManifest.xml, eu acho que muitas vezes eu mudo uma corda, e se esqueça de mudar o nome de seqüência de AndroidManifest.xml.
  • Se você não consegue encontrar a questão. clique direito / gen / -> Restaurar a partir de história local ... -> marque R.java -> clique em Restaurar . Isso não resolve o problema, mas ele vai limpar os erros extra para tornar o problema mais fácil de encontrar.

Eu sei que já há um monte de respostas aqui, mas este é o primeiro link no Google, por isso estou a compilar todos os conselhos aqui e espero que ajude alguém novo para isso:)

Eu tive um problema semelhante onde o arquivo R.java não estava sendo regenerado depois que eu adicionei alguns ícones e arquivos de layout. Tentei limpeza e reconstrução e as coisas pioraram desde então o arquivo R.java original foi ido e ainda não foi regenerado. Eventualmente, ocorreu-me que deve haver erros do compilador para o compilador que gera R.java e não estão sendo mostrados os do console. Felizmente, eu tinha notado anteriormente que

  1. é um erro se um arquivo .xml refere-se a uma outra que é inexistente e
  2. é um erro ter letras maiúsculas em seus nomes de arquivo (por isso é que proibido, eu amo o caso do camelo).

De qualquer forma, depois de renomear meus ícones e arquivos .xml para todas as letras minúsculas e, em seguida fixação de todas as referências dentro dos arquivos .xml, voila, R.java foi regenerado. Apenas a tempo para se sentir bem quando eu parei para o almoço: -)

Para gerar o arquivo R novamente:

  1. Modificar algo em layout-> activity_main.xml
  2. Salve o arquivo
  3. Projeto-> Limpar ...

Apenas excluir o arquivo R localizado no diretório gen e tente Projeto-> Limpo. Em seguida, construir o seu aplicativo novamente.

Você também pode clique direito sobre o project -> Android Tools -> Fix Project Properties. Isso deve fazer com que a classe R.java ser gerado-re.

Meu problema era no arquivo de manifesto. Eu apaguei ícones do lançador e não referenciar os novos no Manifesto:)

I reabrir eclipse, editar um dos meus arquivos xml e depois descobrir que minha classe ACTIVY estava referindo android.R em vez de meu pacote "R": -)

A fim de regenerar o R.class, você vai ter que tentar várias técnicas.

  • Remova todas as importações de P a partir de seus arquivos de origem Java: import R.android
  • Certifique-se de abrir o painel "problemas", indo para Janela-> Mostrar view-> Problemas
  • Se você tem alguns erros em seus recursos XML, você vai precisar para corrigir esses erros. No meu caso eu tive que mudar meu id atributos para incluir o sinal "+" da seguinte forma: android:id="@+id/grp_txt"
  • Agora continuarei a fazer Projeto-> Limpar
  • Finalmente fazer Projeto-> Close, Projeto-> Abrir

O sinal "+" indica um novo ID de recurso e as forças a ferramenta aapt para criar um novo inteiro de recursos na classe R.java.

Se você usar IntelliJ IDEA você pode clicar em construção - Reconstruir Projeto

Se você excluiu acidentalmente seu R em eclipse por "projetar limpa" (não faça isso) Rightclick em seu projectfile -> Restaurar a partir de história local ...

recriar o R ??

O meu caso:

  • quebrado xml bug causado em R. (por causa de um, o, u, letras em id)
  • projeto limpo eliminado minha R.

O que eu fiz:

  • recriado R de história local
  • marcada para as importações errado R em minhas aulas (como importação android.R) e removeu-los
  • fixa esse arquivo xml e salvou o seu conteúdo em um arquivo txt externo
  • excluiu o xml completamente do meu projeto.
  • correu meu projeto uma vez
  • colocar isso de volta xml fixada em seu lugar

e ...

  • deu a minha namorada um grande abraço sem uma razão após pirando como um Hulk.

Meu problema era erros em meus arquivos XML. Erros nem sempre são detectados automaticamente no Android Editor de XML comum ou Android editor de manifesto comum, de modo a tentar usando o editor de texto normal em vez. Por exemplo, de alguma forma, alguns rabiscos aleatórios a partir de um arquivo .java havia sido inserido em meus arquivos de manifesto e strings.xml.

Botão direito do mouse em qualquer arquivo XML (provavelmente na pasta / res ou AndroidManifest.xml) e clique em "Abrir com", selecione "editor de texto." Certifique-se de tudo parece bom e salve. Além disso, certifique-se de permitir que "criar automaticamente" para seu projeto. Eu tinha eliminado meu arquivo R.java e foi reconstruído a partir do zero, então não há necessidade de restaurá-lo a partir da história local.

Tente adicionar um novo "arquivo XML Android" para, por exemplo, a pasta /res/layout. Isso pode fazer com que o plugin para regenerar a classe R.

Você pode apenas modificar os arquivos XML em / res da pasta e até mesmo adicionar um espaço e salvar, será regenerado.

Eu tive o mesmo problema - "R" em falta. E nenhum dos conselhos dados aqui ajudou. Felizmente, eu encontrei a razão - de alguma forma Eclipse se perdeu o Projeto-Propriedades-alvo. Foi desactivado. Eu não sei até agora, o que tinha feito isso, mas defini-lo de volta ajudou. Então, atenção! - faltando R pode significar o alvo faltando , também

Eu tentei todas as soluções acima. Mas, infelizmente, não resolveu o meu problema. Meu R.java se foi assim que eu colado uma nova foto de minha pasta drawable. Depois de ler as respostas para esta pergunta eu tentei excluir o ícone Tenho anteriormente colado (enquanto Desenvolver automaticamente ativado) e estava tudo bem afetr. Esperamos que isso ajude alguém!

Eu tive esse problema e eu só clicar com o botão direito no pacote do meu projeto e construir projeto. Instantaneamente a classe R apareceu no pacote gen.

Em caso de alguém acha esta discussão quando pesquisando, como eu fiz:

Eu tinha o que parecia ser o mesmo problema por um tempo, e depois de algumas escavações Notei que o arquivo R.java foi corretamente construído, mas foi ignorado por apenas um dos meus arquivos de origem. O problema para este arquivo em particular foi que Eclipse tinha "amavelmente", acrescentou a seguinte linha no topo:

import android.R;

Isso esconde eficazmente o material projeto de P. Basta removê-lo e tudo vai ficar bem de novo ...

Você pode usar o Eclipse de "Restaurar a partir da história local" para restaurar o arquivo de R antigo, se ele tiver sido excluído. Depois que você possivelmente ver o que mantém Eclipse desde a construção de seus arquivos (eu vi outros erros que antes que realmente ajudou a corrigir o problema).

Pode ser que você pode ir para propriedades do projeto e selecione a opção Android e, em seguida, definir o destino para o projeto. Depois de aplicar a API alvo selecionado para este projeto, ele irá gerar automaticamente R.java.

Na maior parte um problema com um arquivo de layout inválido. Abra a vista 'Problemas' e olhar para Erros em arquivos de layout XML. Corrigi-los ea classe R será recriado.

No meu caso não havia um erro real. A visão problema mostrou um erro em um layout xml. O editor mostrou o erro xml também. Apenas a reformatação do xml usando o formatador automático com 'ctrl-f' 'fixo' xml 'error' ea classe R foi recriado.

Você pode simplesmente excluir o arquivo R.java do seu projeto e ele vai regenerar supondo que você tem construir habilitado automaticamente. Se você não tem construir habilitado automaticamente simplesmente Goto Projeto-> construir tudo

Para mim, foi um valor seqüência de recurso não está sendo definida ... depois eu adicionei-o à mão para strings.xml, a classe R foi automagicamente regenerado!

Este problema normalmente acontece quando a importação de um projeto existente. Tentar corrigir todos os erros de todos os .xml arquivos pasta res, bem como manifesto arquivo. Muito provavelmente os erros são mostrados em " match_parent" parâmetro, alterá-lo para " fill_parent ". Quando todos os erros são claras, R.java será apareceu.

Se não houver um erro em qualquer arquivo .xml. Tente editar qualquer arquivo xml (como apagar uma letra e escrevê-lo de volta) e salve o arquivo, isso fará com que para gerar o R.java.

Eu tenho um problema que o findViewById(R.id.edit_text) mas retornar um TextView não um EditText. Acho que o problema é a classe R.id tem número errado id, então, eu limpar o projeto, em seguida, a sua funciona bem.

No meu caso era um arquivo XML impropriamente chamada que causou meu arquivo R não para reconstruir. Esta não apareceu no explorador pacote, mas foi mostrado na LogCat. Olhe para fora para quaisquer avisos lá sobre seus arquivos res. Não importa quantas vezes você limpar o seu projeto, o arquivo R não vai reconstruir até que esses erros são tomadas de cuidados.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top