gpt4 book ai didi

java - 为什么编译器会在多行中输出单个警告?

转载 作者:行者123 更新时间:2023-12-01 12:40:44 25 4
gpt4 key购买 nike

我们最近通过调用 gradle bat 文件并处理进程的输出和错误流,将 Android 项目集成到 TFS Build 流程工作流程中。

问题在于,为项目生成的警告消息会以换行符写入错误流,从而导致单个编译器警告出现多个 TFS 构建警告。

这是我们的构建摘要中的示例,显示了两个编译器警告被报告为多个 tfs 警告:

2 compilation warnings being reported as several tfs warnings

是否需要更改某个设置以告诉编译器将警告生成为单行输出?也许 gradle 本身有一些配置?

我真的很想避免在工作流程本身中处理这个问题,因为它会给这样一个微不足道的事情增加显着的复杂性。

最佳答案

查看 gradle 记录器的源代码:

https://github.com/gradle/gradle/blob/master/subprojects/core/src/main/groovy/org/gradle/logging/internal/AbstractLineChoppingStyledTextOutput.java

为了便于阅读,文本确实被切成一定的长度,并且格式字符被插入到记录的文本中。

您可以清楚地看到此记录器样式正在初始化:

https://github.com/gradle/gradle/blob/master/subprojects/core/src/main/groovy/org/gradle/BuildLogger.java

没有太多配置选项;

根据此分析,不幸的是,我认为您无法通过配置影响日志记录样式。但是,通过在调用 WriteBuildMessage 之前进行一些简单的字符串解析,可以很容易地删除工作流程中的行尾格式,不是吗?

关于java - 为什么编译器会在多行中输出单个警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25123432/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com