IntelliJ IDEA如何设置Gradle任务失败时不自动过滤控制台日志
IntelliJ IDEA Gradle任务失败日志节点自动跳转问题解决方案
适用环境:IntelliJ IDEA 2022.1.3、Gradle 7.4.1
全局配置修改(一劳永逸)
打开设置面板依次进入Build, Execution, Deployment > Build Tools > Gradle,在Run配置分组下做两个调整:- 取消勾选
Select the first failed task when finished,关闭执行结束自动选中最细粒度失败子节点的逻辑 - 勾选
Show full console output for all tasks,关闭按选中节点过滤日志的特性
保存设置后执行一次gradle --stop命令重启Gradle守护进程,后续所有Gradle任务执行完成后都会默认停留在根运行节点,直接展示全量上下文日志、异常栈信息,不会再出现选中空日志节点的问题。
- 取消勾选
单任务定向配置
如果不想修改全局规则,仅需要针对JavaExec这类常出现空日志的任务调整,可以单独修改对应运行配置:- 点击顶部运行配置下拉框,选择
Edit Configurations - 找到目标Gradle任务配置项,在
Arguments输入框追加启动参数--stacktrace --info - 取消配置页里
Filter output for selected node only的勾选
配置生效后,哪怕自动选中子命令节点,当前节点也会输出完整异常信息和前置上下文日志,不需要手动切换高层节点。
- 点击顶部运行配置下拉框,选择
无配置快捷操作
临时排查问题不想改配置时,任务执行失败弹出Run工具窗口后,直接按快捷键Alt+Shift+↑可以快速向上选中父级任务节点,比手动点击左侧树结构效率更高。
版本适配提示:2022.1版本IDEA的Gradle插件存在已知缺陷:当任务抛出非Gradle标准API封装的自定义异常时,最细粒度的命令执行节点会吞掉全部异常栈输出,该问题在2022.2.3及后续版本才正式修复。如果上述配置不生效,可以点击Run窗口左侧树结构顶部的视图切换按钮,将节点分组模式从
Group by task type切换为Flat mode,也能规避自动选中空日志节点的问题。
内容的提问来源于stack exchange,提问作者Shorn
相关产品推荐
相关产品推荐

