Android Studio: где находится окно вывода ошибок компилятора?

310

Когда я запускаю свой проект в Android Studio, в окне «Сообщения» я получаю:

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.

Там написано, > Compilation failed; see the compiler error output for details. так где же вывод ошибок компилятора? И / или как мне работать с --stacktraceопцией?

ChaseTheSun
источник
2
Я использую Android Studio 1.3.2, и ни одно из решений не работает.
Милан Бабушков
6
Android-студия Sucki требует, чтобы за такие глупые вопросы проголосовали .. :)
Сиддхарт,
может быть, это идея IDEA, чтобы скрыть ошибки в идеале (SCNR)
bebbo
У меня также та же проблема, когда я обновляю плагин. Я использую Android Studio 3.4 Canary 6
Saurabh Gaddelpalliwar
Я тоже сталкивался с этой проблемой. В моем случае проблема заключается в данных класса сущностей. Если ваши члены данных являются частными, они должны создать методы получения и установки. Благодаря этому методу возникают другие проблемы с привязкой.
Сумит Кумар

Ответы:

63

Этот ответ устарел. Для Android 3.1 Studio перейдите к этому ответу

Вы можете деактивировать внешнюю сборку. Для этого нажмите «значок настроек компилятора» на панели «Создание сообщений», которая появляется при возникновении ошибки. Вы также можете открыть настройки компилятора, выбрав Файл -> Настройки -> Компилятор. (Спасибо @maxgalbu за этот совет).

введите описание изображения здесь

Снимите флажок «Использовать внешнюю сборку»

введите описание изображения здесь

И вы увидите ошибки в консоли

РЕДАКТИРОВАТЬ: После возврата к «внутренней сборке» вы можете получить некоторые ошибки, вы можете решить их следующим образом: Android Studio: отключение «Внешней сборки» для отображения вывода ошибок создает дублирующиеся ошибки класса

Хорхе Фуэнтес Гонсалес
источник
Снятие отметки «Использовать внешнюю сборку» приводит к появлению двух ошибок при попытке создать свой проект: error: duplicate class: com.moberg.colorgame.BuildConfigиerror: duplicate class: com.moberg.colorgame.R
Moberg
3
@Moberg Та же проблема здесь, я начал новый вопрос: stackoverflow.com/questions/17108393/…
Waza_Be
Хорошо, я посмотрю, что произойдет, и отвечу на новый вопрос, если что-нибудь найду.
Хорхе Фуэнтес Гонсалес
7
У меня нет этой панели "сообщения делают" ... WTF?
maxgalbu
9
Я не вижу этих вариантов сейчас. Я использую Android Studio 1.2.1.1
Эндрю С
563

Для Android Studio 3.1, выберите значок ниже Build в окне Build.

Android Studio 3.1 необработанная кнопка переключения журнала

В Android Studio 3.3 (возможно, в 3.2.1) значок изменился, хотя местоположение остается прежним:

Android Studio 3.3 кнопка переключения необработанного журнала

Окно сборки должно открываться при запуске действия сборки (например, из меню «Сборка»). Если вы этого не видите, вы можете попробовать нажать кнопку «Построить» в нижней части окна (также видно на скриншотах выше) или через меню Вид → Инструменты Windows → Построить.

кипяченая вода
источник
Приятно видеть, что многие проголосовали за этот ответ, а Android Studio 3.1 все еще находится в бета-версии 3. :-)
Ове Стоерхолт
16
Что это за иконка, я не могу ее найти, и при этом я не могу найти окно сборки
Сэм
7
Грустно, что мне пришлось гуглить и копаться в stackoverflow, чтобы узнать, как увидеть вывод компилятора. Спасибо @boiledwater
spartygw
1
@shikharbansal в случае, если ссылка на изображение когда-либо снова разорвется, значок находится на левом краю окна сборки. Это выглядит как представление списка, отделенное от "ab" косой чертой.
Макс
4
В Android IDE просто говорится: «Переключить вид». Переключить вид чего? +1 за этот ответ. Google по-прежнему делает все возможное, чтобы скрыть рабочий процесс для разработчиков
angryITguy
39

Это действительно просто настроить! Просто зайдите в настройки компилятора в Android Studio 2.2.3 и установите --stacktraceкоманду:

Настройки компилятора для добавления команды --stacktrace

Затем снова запустите приложение

Антонио
источник
5
Если бы это было действительно просто, как вы говорите, этот поток не существовал бы.
jungledev
1
@jungledev это очень просто настроить, но это не слишком очевидно, чтобы знать это :) Изменяя формулировку в моем ответе, чтобы прояснить это
Антонио
1
В AS 4.0 я установил эту --stacktrace. Но где выход? Это был оригинальный вопрос.
Стив Уайт
@SteveWhite в выводе консоли при сборке.
Антонио
Антонио, ожидаемый вывод никогда не появлялся в консоли сборки для меня. Я должен был запустить Gradlew вручную, как объяснено в другом месте на этой странице.
Стив Уайт
32

Вы на Windows? Запустите cmd, найдите папку вашего проекта и запустите "gradlew build". Это уже должно дать вам больше выходных данных, чем в IDE, вы также можете использовать там --info, --stacktrace и --debug.

Хади Кокабас
источник
10
прекрасный! Теперь, если бы только этот вывод можно было интегрировать в Android Studio
ChaseTheSun
4
Мои мысли точно. IDE без окна для ошибок компилятора? Могу поспорить, что мы что-то упустили, но этого обходного пути должно быть достаточно, пока это не будет решено.
Хади Кокабас
4
"Вы на окнах?" - Это также работает под Ubuntu Linux тоже! Спасибо! /[folder-where-you-installed-the-android-studio]/sdk/tools/templates/gradle/wrapper/gradlew build
geekQ 15.07.13
Я нахожусь в процессе миграции огромного проекта из Eclipse в Android Studio. Лучший совет на данный момент: сначала запустите сборку командной строки, а затем позаботьтесь о новой IDE.
Джерри Брэди
18

Вы также можете увидеть ошибку в окне Build, нажав на кнопку переключения.

введите описание изображения здесь

живи любя
источник
15

В моем случае я предпочитаю открыть окно терминала в левом нижнем углу и запустить gradlew build --info:

введите описание изображения здесь

RominaV
источник
5
@Pamblam Use ./gradlew
Рис
1
Это единственный ответ, который я нашел на этой странице, который работает в AS 4.0
Стив Уайт
9

В Android Studio 2.2.3 вы можете найти вывод в консоли Gradle, как показано ниже консоль Gradle

каит беяз
источник
1
В AS 4.0, где находится эта консоль Gradle?
Стив Уайт
6

Я строю на том, что рекомендовал Хорхе. Перейдите в Файл-> Настройки-> Компилятор.

Здесь вы увидите поле для добавления параметров компилятора, в которое вы вставляете --stacktrace

джай
источник
Я пробовал это в AS 4.0. Я не знаю, были ли какие-либо результаты, которые он мог произвести.
Стив Уайт
2

Бегать

gradlew --stacktrace 

в терминале, чтобы увидеть полный отчет

для меня это было

Задача: app: compileDebugJavaWithJavac FAILED javacTask: исходный выпуск 1.8 требует целевой выпуск 1.8

так что я добавил

 compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

в файле app.gradle / android и сборка завершена успешно

Фалах Аббас
источник
Когда я делаю это в терминале (в папке проекта), он говорит: BUILD SUCCESSFUL. Но когда я строю с помощью Build -> Make Project, я вижу то же самое замечание, что были ошибки компиляции.
Стив Уайт
1

В моем случае у меня была ссылка findViewById на представление, которое я удалил в xml

если вы используете AS 3.1 и выше:

  1. зайдите в Настройки> Сборка, выполнение и развертывание> компилятор
  2. добавьте --stacktrace к параметрам командной строки, нажмите «Применить» и ок
  3. В нижней части AS нажмите Console / Build (если вы используете стабильную версию 3.1.2 и выше), разверните панель и снова запустите ваше приложение.

вы должны увидеть полную трассировку стека в расширенном представлении и конкретную ошибку.

Петерстев Уремгба
источник
Это AS 4.0. Это все равно терпит неудачу так же. Нет трассировки стека.
Стив Уайт
Вы добавили флаги --stacktrack --debug --info?
Петерстев Уремгба
Конечно. Но это была не проблема. Проблема (насколько я могу судить) больше не существует окна, где появляется трассировка стека. Тем не менее, есть возможность запустить gradlew вручную в терминале, чтобы получить информацию. В другом комментарии на этой странице я сказал, какой метод работал.
Стив Уайт
0

Если вы работаете в Android Studio 3.1, убедитесь, что файл-> Структура проекта -> Исходная совместимость пуст. он не должен иметь 1,8 комплекта.

затем нажмите ок, проект синхронизируется и ошибка исчезнет.

Логеш Р
источник
Вопрос был не в том, как заставить ошибку исчезнуть. Вопрос был в том, как увидеть сообщения об ошибках.
Стив Уайт
0

после конвертировать андроид в андроид.

изменить Импорт библиотеки проблема решит Как это:

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

импорт androidx.annotation.NonNull; << как это

import androidx.appcompat.app.ActionBarDrawerToggle; << как это

import androidx.drawerlayout.widget.DrawerLayout; << как это

импорт androidx.recyclerview.widget.RecyclerView; << как это

import androidx.appcompat.app.AppCompatActivity; << как это

Ахмад Аллах Ахмад
источник
Это не относится к вопросу OP: как увидеть ошибки компиляции.
Стив Уайт
-2

Я решил эту ошибку "Компиляция не смогла увидеть вывод ошибки компилятора для деталей"

Решение очень простое: добавьте Gradle ниже строки кода

реализация "com.google.android.gms: play-services-ads: 15.0.0"

Шах Хуссейн
источник
Где именно должна быть добавлена ​​строка кода? Не могли бы вы перефразировать?
harmonica141
Это не отвечает на оригинальный вопрос: как увидеть сообщения об ошибках компилятора.
Стив Уайт