Android工作室:哪里是编译器错误输出窗口?

当我在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选项?< / p >

269798 次浏览

你用的是Windows吗?启动cmd,找到你的项目文件夹并运行“gradlew build”。这应该已经为你提供了比IDE更多的输出,你也可以在那里使用——info,——stacktrace和——debug。

这个答案已经过时了。对于Android 3.1 Studio去这个答案

您可以做的一件事是禁用外部构建。要做到这一点,点击“编译器设置图标”在“消息制作”面板出现错误时。你也可以通过文件->设置->编译器打开编译器设置。(感谢@maxgalbu提供这个提示)。

enter image description here

取消勾选“使用外部构建”

enter image description here

你会在控制台中看到错误

编辑:再次返回“内部构建”后,您可能会得到一些错误,您可以通过以下方式解决它们:Android Studio:禁用“外部构建”;若要显示错误输出,请创建重复的类错误

我是在乔治推荐的基础上进行的。 Goto文件编译器- >设置- >。< / p >

在这里,您将看到一个用于添加编译器选项的字段——stacktrace

在我的情况下,我更喜欢打开终端窗口在左下角,并运行gradlew build --info:

enter image description here

在android studio 2.2.3中,你可以在gradle控制台中找到如下所示的输出 gradle console < / p >

设置起来真的很简单!只需转到Android Studio 2.2.3中的编译器设置,并设置--stacktrace命令:

Compiler settings to add——stacktrace command .

然后再次运行应用程序

对于Android Studio 3.1,在Build窗口中选择Build下面的图标。

Android Studio 3.1 raw log toggle button

在Android Studio 3.3(可能在3.2.1),图标已经改变了,尽管位置是相同的:

Android Studio 3.3 raw log toggle button

当你运行一个构建操作时,构建窗口应该打开(例如从构建菜单中)。如果你没有看到它,你可以尝试沿着窗口底部的“构建”按钮(也可以在上面的截图中看到),或者通过菜单查看→工具窗口→构建。

如果您在android studio 3.1中,验证文件->项目结构->源兼容性是否为空。它不应该有1.8集。

然后按ok,项目将同步,错误将消失。

在我的情况下,我有一个findViewById引用一个视图,我已经删除了xml

如果你运行的是as3.1及以上版本:

  1. 进入>编译、执行和部署>编译器的设置
  2. 将——stacktrace添加到命令行选项中,单击应用并确定
  3. 在AS的底部单击Console/Build(如果你使用的是稳定版本3.1.2及以上),展开面板并再次运行你的应用。

您应该在展开的视图中看到完整的堆栈跟踪和特定的错误。

您还可以通过单击切换按钮在Build窗口中看到错误。

enter image description here

运行

gradlew --stacktrace

在一个终端看到完整的报告

对我来说

Task:app:compileDebugJavaWithJavac FAILED . javacTask:源版本1.8要求目标版本1.8

所以我补充道

 compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}

在app.gradle文件/ android 并且构建成功完成

将android转换为androidx后。

change导入库问题将解决。 这样的:< / p >

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

进口androidx.annotation.NonNull;& lt; & lt;像这样

进口androidx.appcompat.app.ActionBarDrawerToggle;& lt; & lt;像这样

进口androidx.drawerlayout.widget.DrawerLayout;& lt; & lt;像这样

进口androidx.recyclerview.widget.RecyclerView;& lt; & lt;像这样

进口androidx.appcompat.app.AppCompatActivity;& lt; & lt;像这样

我解决了这个错误“编译失败,无法看到编译器错误输出详细信息”

解决方法很简单:在代码行下面添加一个Gradle

实现“com.google.android.gms: play-services-ads: 15.0.0”

Android Studio v4.0

正如其他人所提到的,“信息”;窗口,显然存在于as3。*在4.0中不再存在(或者它被隐藏得非常非常好)。在浪费了太多时间之后,我找到了另一种查看这些编译错误的方法:

  1. 打开Gradle工具窗口。默认情况下,它位于顶部的右边缘:

enter image description here

如果你没有看到它,使用View >工具窗口>Gradle。

  1. 在Gradle窗口中,打开应用程序的根选项并运行Tasks >建立在构建:

enter image description here

  1. 运行工具窗口将自动打开,在那里您将看到有关构建错误原因的详细信息:

enter image description here

如果它没有自动打开,你可以通过View >工具窗口>运行。

希望这给了你所有需要的信息。如果没有,试试:

  1. 去文件>设置在构建、执行、部署等;编译器。在命令行选项中,添加--scan

enter image description here

应用并确定,然后再次尝试Gradle构建。

只需点击“Build"节点

enter image description here

由于某种原因,“编译失败”;节点刚刚开始被自动选择,因此描述窗口是非常没有帮助的。

遵循这些步骤!

  1. 进入文件

  2. 然后单击设置

  3. 然后在“;构建,执行,部署”下;进入编译器

  4. 在“命令行选项”中添加此选项;然后按OK enter image description here < / p >

  5. 现在正常运行你的测试/应用程序,当你遇到错误的时候,你会看到突出显示的消息,像这样: enter image description here < / p >
  1. 点击“运行——扫描”;或者“运行——stacktrace"将给出更详细的错误。