Eclipse / Android: “Erros ao executar o builder 'Android Pre Compiler' no projeto…”

97

Tento fazer algum trabalho em um projeto Android no qual não trabalhei por alguns meses, mas toda vez que tento construir o projeto, o Eclipse exibe uma caixa de diálogo dizendo:

'Building workspace' has encountered a problem

Errors occurred during the build.
Errors running builder 'Android Pre Compiler' on project 'XXX'
java.lang.NullPointerException

Estou executando o Eclipse em um Mac com um projeto Android build target 4.0.3 (API de nível 15) e tenho as seguintes versões de coisas instaladas

  • Eclipse - 3.7.2
  • Ferramentas de desenvolvimento Android - 21.0.1
  • Android SDK - até 17

Já tentei algumas coisas, como iniciar um novo espaço de trabalho, instalar este 'Subversive SVN JDT Ignore Extensions', atualizar tudo, ter certeza de que não tenho nenhum arquivo sem extensões na minha pasta de origem (ou em qualquer outro lugar), garantindo que meu compilador Java seja 1.6 e desligando-o e ligando-o novamente.

EDITAR

Aqui está o rastreamento de pilha do log de erros do Eclipse para este problema:

java.lang.NullPointerException
at com.android.ide.eclipse.adt.internal.build.builders.PreCompilerBuilder.build(PreCompilerBuilder.java:673)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:513)
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:432)
at org.eclipse.ui.actions.BuildAction$1.runInWorkspace(BuildAction.java:305)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

E os dados da sessão:

eclipse.buildId = M20120208-0800
java.version = 1.6.0_37
java.vendor = Apple Inc.
Constantes do BootLoader: OS = macosx, ARCH = x86_64, WS = cocoa, NL = en_US
Argumentos da estrutura: -keyring /Users/onemick/.eclipse_keyring -showlocation
Argumentos da linha de comando: -os macosx -ws cocoa -arch x86_64 -data / Projects / _EclipseWorkspace -keyring /Users/onemick/.eclipse_keyring -showlocation

OUTRA EDIÇÃO

OK, então mais pesquisas me levaram a esta página , o que sugere que esse problema está definitivamente relacionado à presença de arquivos sem extensão em meu projeto - no entanto, não sei qual arquivo e por mais que eu não consiga encontrar qualquer nesse projeto!

Eu ficaria feliz se alguém pudesse explicar o que significa esse erro e como posso obter mais informações de depuração sobre o erro subjacente.

Mick Byrne
fonte
1
qual é o seu alvo de construção do projeto?
Padma Kumar
Android 4.0.3 (API de nível 15)
Mick Byrne
Sim, tentei todas as diferentes soluções sugeridas neste problema, mas nenhuma delas resolveu meu problema. Eu fiz essa pergunta separada, pois só tenho o problema do 'Android Pre Compiler'. Eu nem entendo o que esse 'problema' significa.
Mick Byrne

Respostas:

107

Para aqueles que não desejam instalar a versão de visualização do ADT, há uma solução alternativa descrita aqui .

  1. Abra as propriedades do projeto no Eclipse, em seguida, Recursos -> Filtros de recursos.
  2. Clique no botão "Adicionar ..." -> Marque "Excluir todos", "Arquivos e pastas", "Todos os filhos". Na caixa de entrada de texto, digite ".svn" (sem aspas).
  3. Reinicie o Eclipse.

Tive o mesmo problema com a pasta .git , funcionou perfeitamente.

Vadim Kotov
fonte
Lembre-se de que você precisa fechar e reabrir o projeto após essa alteração.
Tommie
Observe que o ADT 21.1 foi lançado e isso foi corrigido, então você pode apenas atualizar suas ferramentas.
Vadim Kotov
Por favor, ajude-me a me livrar desse erro, vejo que funcionou para todos vocês, mas ainda estou recebendo o mesmo erro
user1106888
@ user1106888 talvez você tenha outra pasta com um ponto no nome. ou alguns arquivos sem extensões, eles podem produzir este erro também.
Vadim Kotov
Problema semelhante / relacionado: stackoverflow.com/questions/14188650/…
Mr-IDE
84

Sempre detesto responder às minhas próprias perguntas, mas esta é uma solução genuína.

A versão 21.0.1 das ferramentas ADT tem um bug que impede a construção de um projeto se você tiver arquivos sem extensões. Este é um problema particular para usuários (como eu) que usam o subversion com arquivos sem extensão.

Uma solução recomendada é instalar esses plug-ins 'subversivos' do Eclipse (Ajuda> Instalar novo software> Trabalhar com seu site de versão Eclipse> Expandir 'Colaboração'> Escolha 'Subversive SVN JDT Ignorar Extensões' e 'Subversive SVN Team Provider'), mas isso não aconteceu não funciona para mim (estou no Indigo, talvez no Juno funcione).

A solução é instalar o 21.1 versão de visualização das ferramentas ADT e do gerenciador SDK do Google. Instruções claras podem ser encontradas aqui e você pode ler todo o histórico e adicionar sua voz à multidão de desenvolvedores aqui .

Mick Byrne
fonte
4
Isso corrige o problema, certifique-se de atualizar o SDK e o ADT.
Michael Marsella
1
Obrigado @MickByrne. Aparentemente, tive que instalar o canal de "visualização" do ADT e SDK para resolver o problema com o Eclipse Juno. Obrigado.
Aleks G
3
Se depois de instalar os plug-ins subversivos o problema não desaparecer, tente o seguinte: Remova o projeto do seu espaço de trabalho, exclua as pastas 'bin' e 'gen' e certifique-se de que foram excluídos do svn, então adicione novamente o projeto para a área de trabalho (Arquivo> Novo> Projeto, Projeto Android a partir de código existente). Se agora ele estiver nomeado incorretamente, clique com o botão direito nele> Refatorar> Renomear. Isso resolveu o problema para mim.
Glenn Schmidt
3
21.1 foi lançado, então você pode atualizá-lo se não gostar de pré-visualizações.
Xavier Ducrohet
1
mar13 não é mais uma PREVIEW. basta ir ao SDK Manager e fazer upgrade.
Tony gil
15

Acabei de reiniciar o Eclipse e o problema foi resolvido.

H2O
fonte
9

Também tive o mesmo problema e percebi que tinha fechado outro projeto que estava relacionado com o que eu estava construindo. Assim que abri, tudo desapareceu.

Arniotaki
fonte
Obrigado, funcionou totalmente. A importação do projeto que eu estava usando como biblioteca estava cheia de erros, então fechei (também porque não estava usando sua funcionalidade no momento). Portanto, como não precisava dele, desconectei-o de minhas bibliotecas (por meio de Propriedades -> Android -> selecione a biblioteca e clique em Remover) e os erros do projeto original foram embora. YAY!
Azurespot de
2

Pode ser que você tenha fechado a biblioteca 'appcompact_v7' para criar um novo arquivo. isso resolveu meu problema abrindo-o de volta

Vinod Joshi
fonte
1

Encontro este erro e apago todos os arquivos .svn, meu projeto não funciona, quando processo 55%

e acho que este é um diretório res vazio no meu projeto, não sei como ele vem, mas quando excluo o dir res vazio, meu projeto funcionou,

então, você deve verificar todos os seus arquivos em seu projeto.

user998953
fonte
1

Eu também estava enfrentando o mesmo problema e perdi muito tempo corrigindo isso, também as soluções fornecidas acima não funcionam para mim. Resolvi esse problema indo para Eclipse -> Ajuda -> Verificar atualizações e reiniciando o Eclipse após a conclusão da atualização.

Amrit Pal Singh
fonte
1

Se você acidentalmente fechou os projetos de biblioteca essenciais para a execução de seu projeto, basta abri-los no Eclipse. Este erro deve desaparecer.

Ganesh Hegde
fonte
0

Outro caso: fechei o projeto atual (com mensagem de erro de construção), descartei o repositório SVN em uso, recompilei:

Erro de construção

Eu adiciono o local do repositório:

Construindo ok!

Serafim
fonte
0

Para resolver este problema, preciso executar o Eclipse como administrador

edrian
fonte
-1

Eu encontrei esse problema recentemente e as soluções fornecidas acima não funcionaram para mim. eu não tinha nenhum arquivo sem extensões. Acontece que após adicionar um novo projeto a partir do código existente, ocorreu um erro de configuração que parece ter bagunçado o estado de eclipse. Depois disso, qualquer projeto no espaço de trabalho que eu tentasse limpar ou construir apresentava o erro do pré-compilador Android com java.lang.NullPointerException.

Eu descobri que os arquivos main.xml dentro do diretório / res não foram encontrados por algum motivo, embora o arquivo estivesse muito lá. A solução foi fechar todas as perspectivas de arquivos abertos no painel de edição Eclipse Java, fechar todos os projetos e, em seguida, abrir o projeto e abrir o arquivo xml principal. Depois de fazer isso, o problema do pré-compilador foi embora.

sri_s
fonte