如何在Sqldelight中禁用SLF4?

问题描述 投票:0回答:1

我在 JVM 上使用 sqldelight v2.0.1 和 sqlite。当我运行应用程序时,我总是收到以下日志行:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

我的应用程序是 CLI 工具,我不希望最终用户看到这些消息。我已经尝试在 Gradle 中手动添加 SLF4J 作为依赖项(如日志中提到的帮助页面所述),但它不起作用。 有什么办法可以禁用此类日志吗?

sqlite slf4j sqldelight
1个回答
0
投票

这就是我为停止

StaticLoggerBinder
日志所做的事情。我知道你说过你尝试过这个,但也许它是错误的版本,或者添加到错误的类路径中。不管怎样,这对我今天有用。运行单元测试时我不再收到警告,这是我的问题。

  1. ./gradlew app:dependencies | grep slf4j
    ,其中
    app
    是我的模块名称。
  2. 记下列出的版本。对于 SqlDelight 的
    sqlite-driver
    2.0.2,它是
    org.slf4j:slf4j-api:1.7.36
  3. 在我的
    app
    模块的
    build.gradle.kts
    中,我添加了:
    testImplementation("org.slf4j:slf4j-nop:1.7.36")

显然,如果您在测试类路径之外获取此日志,请将依赖项添加为

implementation(...)
。希望有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.