Android Studio: Onde está a janela de saída de erro do compilador?


310

Quando eu 'executo' meu projeto no Android Studio, na janela 'Mensagens', recebo:

Gradle: 
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':play01:compileDebug'.
> Compilation failed; see the compiler error output for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

Diz > Compilation failed; see the compiler error output for details. Então, onde está a "saída de erro do compilador"? E / ou como eu corro com a --stacktraceopção?


2
Eu corro o Android Studio 1.3.2 e nenhuma das soluções funciona.
Milan Babuškov 31/01

6
estúdio android sucki exige tais perguntas tolas a ser upvoted .. :)
Siddharth

talvez seja a idéia de IDEA para esconder erros idealmente (SCNR)
Bebbo

Também tenho o mesmo problema quando atualizo o plugin. Eu uso o Android Studio 3.4 Canary 6
Saurabh Gaddelpalliwar

Eu também enfrentei esse problema. No meu caso, o problema está nos dados da classe da entidade. Se seus membros de dados forem privados, eles deverão criar métodos getter e setter. Devido a esse método, outros problemas vinculativos estão chegando.
Sumit Kumar

Respostas:


63

Esta resposta está desatualizada. Para o Android 3.1 Studio, vá para esta resposta

Uma coisa que você pode fazer é desativar a compilação externa. Para fazer isso, clique em "ícone de configurações do compilador" no painel "Criar mensagens" que aparece quando há um erro. Você também pode abrir as configurações do compilador, indo em Arquivo -> Configurações -> Compilador. (Agradecemos a @maxgalbu por esta dica).

insira a descrição da imagem aqui

Desmarque a opção "Usar construção externa"

insira a descrição da imagem aqui

E você verá os erros no console

EDIT: Depois de retornar ao "build interno" novamente, você pode obter alguns erros, é possível resolvê-los da seguinte maneira: Android Studio: desativando o "External build" para exibir a saída de erro, crie erros de classe duplicados


Desmarcando "Build uso externo" introduz dois erros quando tento compilar meu projeto: error: duplicate class: com.moberg.colorgame.BuildConfigeerror: duplicate class: com.moberg.colorgame.R
Moberg

3
@Moberg Mesmo problema aqui, iniciei uma nova pergunta: stackoverflow.com/questions/17108393/…
Waza_Be

Ok, vou ver o que acontece e responder na nova pergunta se encontrar alguma coisa.
Jorge Fuentes González

7
Eu não tenho esse painel "fazer mensagens" ... wtf?
maxgalbu

9
Não vejo essas opções agora. Estou executando o Android Estúdio 1.2.1.1
Andrew S

563

Para o Android Studio 3.1, selecione o ícone abaixo do Build one na janela Build.

Botão de alternância de log bruto do Android Studio 3.1

No Android Studio 3.3 (possivelmente no 3.2.1), o ícone mudou, embora o local seja o mesmo:

Botão de alternância de log bruto do Android Studio 3.3

A janela de construção deve abrir quando você executa uma ação de construção (por exemplo, no menu Build). Caso não o veja, você pode tentar o botão "Compilar" na parte inferior da janela (também visível nas capturas de tela acima) ou através dos menus Exibir → Ferramentas → Janelas → Compilar.


É bom ver que muitos votaram nessa resposta, e o Android Studio 3.1 ainda está na versão beta 3. :-)
Ove Stoerholt

16
O Ícone é que, eu não consigo encontrá-lo, nem posso encontrar uma janela de construção
Sam

7
É triste que eu tenha que pesquisar no google e vasculhar o stackoverflow para descobrir como ver a saída do compilador. Obrigado @boiledwater
spartygw

1
@shikharbansal, caso o link da imagem se quebre novamente, o ícone estará na borda esquerda da janela de criação. Parece uma exibição de lista separada de "ab" por uma barra.
Max

4
O IDE do Android simplesmente diz "alternar visualização". Alternar visualização do que? +1 para esta resposta. Google ainda está fazendo o seu melhor para obscurecer o fluxo de trabalho para os desenvolvedores
angryITguy

39

É realmente simples de configurar! Basta acessar as configurações do compilador no Android Studio 2.2.3 e definir o --stacktracecomando:

Configurações do compilador para adicionar o comando --stacktrace

Em seguida, execute o aplicativo novamente


5
Se fosse realmente simples como você diz, esse tópico não existiria.
Jun

1
@jungledev é realmente simples de configurar, mas não é óbvio demais para saber que :) Alterar texto na minha resposta para deixar isso claro
Antonio

1
No AS 4.0, defino esse --stacktrace. Mas onde está a saída? Essa foi a pergunta original.
Steve White

@SteveWhite na saída do console durante a construção.
Antonio

32

Você está no Windows? Inicie o cmd, encontre a pasta do projeto e execute "gradlew build". Isso já deve fornecer mais saída que o IDE; você também pode usar --info, --stacktrace e --debug lá.


10
lindo! Agora se somente que a produção poderia ser integrada no Estúdio Android
ChaseTheSun

4
Meus pensamentos exatamente. Um IDE sem uma janela para erros do compilador? Aposto que estamos perdendo alguma coisa, mas essa solução alternativa deve ser suficiente até que isso seja resolvido.
Hadi Kocabas

4
"Você está no windows?" - Isso também funciona no Ubuntu Linux também! Obrigado! /[folder-where-you-installed-the-android-studio]/sdk/tools/templates/gradle/wrapper/gradlew build
geekQ

Estou migrando um grande projeto do Eclipse para o Android Studio. O melhor conselho até agora: faça com que o build gradle da linha de comando funcione primeiro e depois se preocupe com o novo IDE.
Jerry Brady

18

Você também pode ver o erro na janela Compilar clicando no botão de alternância.

insira a descrição da imagem aqui


15

No meu caso, prefiro abrir a janela Terminal no canto inferior esquerdo e executar gradlew build --info:

insira a descrição da imagem aqui


5
@Pamblam Use ./gradlew
Rhys

1
Esta é a única resposta que encontrei nesta página que funciona no AS 4.0
Steve White

9

No android studio 2.2.3, você pode encontrar a saída no console do gradle, como mostrado abaixo console gradle


1
No AS 4.0, onde fica esse console Gradle?
Steve White

6

Estou construindo o que Jorge recomendou. Vá para Arquivo-> Configurações-> compilador.

Aqui você verá um campo para adicionar opções de compilador onde você conecta --stacktrace


Eu tentei isso no AS 4.0. Não sei se procuraria alguma saída que ela pudesse ter produzido.
Steve White

2

Corre

gradlew --stacktrace 

em um terminal para ver o relatório completo

para mim foi

Tarefa: app: compileDebugJavaWithJavac FAILED javacTask: o release de origem 1.8 requer o release de destino 1.8

então eu adicionei

 compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

no arquivo app.gradle / android e a compilação concluída com êxito


Quando faço isso em um terminal (dentro da pasta do projeto), ele diz BUILD SUCCESSFUL. Mas quando construo com Build -> Make Project, vejo o mesmo aviso de que houve erros de compilação.
Steve White

1

No meu caso, eu tinha uma referência findViewById para uma exibição que eu havia excluído no xml

se você estiver executando o AS 3.1 e superior:

  1. vá para Configurações> Compilação, Execução e Implantação> compilador
  2. adicione --stacktrace às opções da linha de comandos, clique em aplicar e ok
  3. Na parte inferior do AS, clique em Console / Build (se você usa a versão estável 3.1.2 e superior), expanda o painel e execute seu aplicativo novamente.

você deve ver o rastreamento de pilha completo na exibição expandida e o erro específico.


Este é o AS 4.0. Ainda falha da mesma maneira. Sem rastreamento de pilha.
Steve White

Você adicionou os sinalizadores --stacktrack --debug --info?
Peterstev Uremgba 17/06

Certo. Mas esse não era o problema. O problema (quase como eu posso dizer) não existe mais uma janela em que o rastreamento da pilha aparece. No entanto, é possível executar o gradlew manualmente em um terminal para obter as informações. Em outro comentário nesta página, eu disse qual método funcionava.
Steve White

0

Se você estiver no android studio 3.1, verifique se o arquivo-> Estrutura do projeto -> Compatibilidade de origem está vazio. não deve ter 1,8 conjunto.

depois pressione ok, o projeto será sincronizado e o erro desaparecerá.


A questão não era como fazer com que o erro desaparecesse. A questão era como ver as mensagens de erro.
Steve White

0

após a conversão android para androidx.

alterar o problema da biblioteca de importação será resolvido. Como isso:

import androidx.appcompat.widget.Toolbar;  <<  like this

import androidx.annotation.NonNull; << como este

importar androidx.appcompat.app.ActionBarDrawerToggle; << como este

importar androidx.drawerlayout.widget.DrawerLayout; << como este

importar androidx.recyclerview.widget.RecyclerView; << como este

importar androidx.appcompat.app.AppCompatActivity; << como este


Isso não aborda a questão do OP: como ver os erros de compilação.
Steve White

-2

Resolvi este erro "Falha na compilação ao ver a saída do erro do compilador para obter detalhes"

A solução é muito simples: adicione um Gradle abaixo de uma linha de código

implementação 'com.google.android.gms: play-services-ads: 15.0.0'


Onde exatamente a linha de código deve ser adicionada? Você poderia reformular?
Harmonica141

Isso não responde à pergunta original: como ver as mensagens de erro do compilador.
Steve White
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.