【问题标题】:Replacing Deprecated Gradle LoggingManager.setLevel() for Checkstyle为 Checkstyle 替换已弃用的 Gradle LoggingManager.setLevel()
【发布时间】:2016-11-20 02:49:32
【问题描述】:

我在 Gradle 构建中使用 Checkstyle 插件。当使用 -info 标志运行 Gradle 时,Checkstyle 会产生过多的输出。我在this question 寻求帮助,解决方案是将以下内容添加到 Gradle 脚本中:

[checkstyleMain, checkstyleTest].each { task ->
    task.logging.setLevel(LogLevel.LIFECYCLE)
}

您可以在上下文here 中查看脚本。这个解决方案一直很好,直到最近 Gradle 中的更改导致 setLevel() 方法被弃用。我现在看到 Gradle 2.14 出现以下错误:

LoggingManager.setLevel(LogLevel) 已被弃用,并计划在 Gradle 3.0 中删除。如果您使用此方法公开 Ant 日志消息,请改用 AntBuilder.setLifecycleLogLevel()。

有没有人知道如何在使用 -info Gradle 标志而不遇到弃用警告时从 Checkstyle 插件中消除过多的日志记录?

【问题讨论】:

  • 我遇到了同样的问题,搜索了源代码,然后看到了setLevelInternal。像魅力一样工作:task.logging.setLevelInternal(LogLevel.LIFECYCLE)。但是,使用“内部”方法总是有点冒险

标签: java gradle checkstyle


【解决方案1】:

你可以使用;

ant.lifecycleLogLevel = "ERROR"

代替;

logging.setLevel(LogLevel.ERROR)

注意:以下是ant.lifecycleLogLevel: 的可能级别

DEBUG, VERBOSE, INFO, WARN, ERROR;

【讨论】:

  • 感谢您的建议。不幸的是,对于 Checkstyle 插件,这并不能解决问题。如果我将问题中的配置更改为使用task.ant.lifecycleLogLevel... 而不是task.logging.setLevel,我最终会得到想要避免的过多输出。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-24
  • 2017-02-13
  • 2014-02-19
相关资源
最近更新 更多