Java Apache方解石项目中的log4j设置

Java Apache方解石项目中的log4j设置,java,log4j,apache-calcite,Java,Log4j,Apache Calcite,我已经下载了Apache方解石项目,并在IntelliJ IDEA 2019.3.2中打开了它的Gradle项目。我遇到了一个问题,它无法正确加载slf4j类(我得到了slf4j:未能加载类“org.slf4j.impl.StaticLoggerBinder”错误)。最后,我通过在:core模块的build.gradle.kts中添加以下行解决了问题: dependencies { ... implementation("org.slf4j:slf4j-api:1.7.3")

我已经下载了Apache方解石项目,并在IntelliJ IDEA 2019.3.2中打开了它的Gradle项目。我遇到了一个问题,它无法正确加载slf4j类(我得到了
slf4j:未能加载类“org.slf4j.impl.StaticLoggerBinder”错误
)。最后,我通过在
:core
模块的
build.gradle.kts
中添加以下行解决了问题:

dependencies {
  ...   
  implementation("org.slf4j:slf4j-api:1.7.3")
  implementation("org.slf4j:slf4j-simple:1.7.3")
  ...
}
现在,消除错误;但是,无论
core\src\test\resource\log4j.properties设置如何,记录器始终设置为
INFO
日志记录级别。当前,我的
log4j.properties
如下所示:

# Change rootLogger level to WARN
log4j.rootLogger=ALL, A1

# A1 goes to the console
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p - %m%n
我运行了
CsvExample
测试,没有记录。调试时,我看到
RelOptRuleCall.LOGGER
设置为
INFO
日志记录级别。
RelOptRuleCall.LOGGER
org.slf4j.impl.SimpleLogger
的一个实例。我也遵循了说明,但运气不佳(尽管有任何
log4j.properties
更改,
RelOptRuleCall.LOGGER
设置为
INFO

我正在使用IntelliJ IDEA 2019.3.2社区版和Windows 10。我还尝试了JDK1.8而不是默认的JDK11,但结果相同。我做错了什么

  • 请修改示例/csv/build.gradle.kts
  • 将以下行添加到依赖项:

       testRuntimeOnly("org.slf4j:slf4j-log4j12")
    
    2.然后将
    core\src\test\resource\log4j.properties
    复制到
    example\src\test\resource\log4j.properties

    添加以下行:

    
    # Increase level to DEBUG for RelOptPlanner
    log4j.logger.org.apache.calcite.plan.RelOptPlanner=TRACE
    # Increase level to TRACE for HepPlanner
    log4j.logger.org.apache.calcite.plan.hep.HepPlanner=TRACE
    
    
  • 请修改示例/csv/build.gradle.kts
  • 将以下行添加到依赖项:

       testRuntimeOnly("org.slf4j:slf4j-log4j12")
    
    2.然后将
    core\src\test\resource\log4j.properties
    复制到
    example\src\test\resource\log4j.properties

    添加以下行:

    
    # Increase level to DEBUG for RelOptPlanner
    log4j.logger.org.apache.calcite.plan.RelOptPlanner=TRACE
    # Increase level to TRACE for HepPlanner
    log4j.logger.org.apache.calcite.plan.hep.HepPlanner=TRACE