Gradle日志在哪里?


93

在Android Studio中为应用程序构建Gradle会产生以下错误:

Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
> java.lang.RuntimeException: failure, see logs for details.
cannot generate view binders com.sun.tools.javac.code.Symbol$CompletionFailure: class file for android.view.View$InvalidateInfo not found

谁能提供在哪里找到日志的提示?

最初,我认为这是一个非常基本的问题,简单的答案会在顶部弹出以进行快速搜索,但是我没有找到它。

请注意,此问题与日志有关,而不是针对此特定错误。此错误消息仅用作示例。如果您感到好奇,则此特定错误是由于在build.gradle中未对compileSdkVersion使用最新版本(23)引起的。


您可以发布build.gradle文件吗,经常由于build.gradle中的数据不一致而发生此类错误
Krasimir Stoev

2
非常感谢您的快速回复。我不想让Gradle文件分散人们的注意力。该错误与数据绑定有关,我可以通过删除数据绑定来消除该错误。这个问题是关于日志的一般问题,而不是特定的错误。我将更新问题以澄清这一点。

Answers:


74

Gradle不会在Android Studio中的单独文件中重定向其日志。

因此,如果要在文件中查看它们,则需要使用终端中的命令来构建gradle,并将gradle输入重定向到文件。

gradlew build > myLogs.txt 2>&1

此命令会将所有标准输出和错误消息从gradle build重定向到项目文件夹中的myLogs.txt文件。

gradlew build > myLogs.txt 2> logErrors.txt

此命令会将所有标准输出从Gradle日志重定向到myLogs.txt,并将所有错误消息重定向到logErrors.txt

已在Windows 10上进行测试,并且完美运行。

是有关如何将标准输出从命令重定向到不同文件的更多信息。


谢谢你的回答。我正在Windows 10上运行Android。是否表示在Android Studio中运行Gradle不会生成日志文件?
Hong

1
是。我也在Windows 10上运行它,我似乎找不到使用类似tee的命令通过终端运行gradlew构建脚本的方法。因此,这里有两个选择-使用Windows支持的类似tee的命令运行该命令,或者通过Log4j导航钩子,如上面的链接所述。
Krasimir Stoev

1
Tommorow在工作中,我将尝试在Ubuntu上执行此命令,然后查看它是否有效。我已经读过,这是您可以在标准输出之外存储日志的方式
Krasimir Stoev

1
我进行了搜索,发现gradle不提供外部文件的常规日志记录选项。这是在这里建议:describe.gradle.org/t/logging-to-console-and-file/8635以及其他一些论坛帖子。
Krasimir Stoev

1
再次您好,我检查了一下,结果发现gradle仅在Android Studio的标准输出中输出其日志。如果需要在单独的文件中查看它们,则应使用命令构建项目,然后将输出重定向到文件。我会更新我的答案。刚刚测试过,它在Windows 10上正常工作
Krasimir Stoev

43

查看->工具窗口->构建。

左侧面板上有一个小的“ ab”按钮。

在此处输入图片说明

当前构建的所有gradle日志都在那里。

在此处输入图片说明

编辑:AndroidStudio 3.3中有一个新图标

在此处输入图片说明


5
图标已更改,但仍然存在。将文字悬停在“切换视图”上。
methodsignature

1
救了我。Kotlin编译器正在显示一堆堆栈痕迹,但我没发现用过
peterchaula

7
该按钮消失了。现在,您单击顶行(“ Build:...”)以显示整个日志。
埃里克·布朗

14

您也可以尝试像这样运行任务:

> gradlew-信息库

您将获得一堆有用的日志信息


6
为什么要投票?Gradle自己Run with --info or --debug option to get more log output.在其输出的底部打印“啊,如今的孩子们,他们避开了圣终端”
Antek

这就是我需要的,以便在命令行中查看完整的扩展日志。这是有用且很好的答案!我正在使用Gradle 5.5.1
David
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.