当我运行我们的测试套件时,slick决定登录调试级别,这使得很难看到我们的测试输出并导致套件花费更长时间。我无法弄清楚如何让它沉默。我已经尝试过如slick手册中建议的那样使用slf4j-nop,但似乎我们的项目使用了其他几个记录器并且光滑正在使用其中一个。这是我们项目定义的相关部分:
libraryDependencies ++= Seq(
"org.apache.spark" %% "spark-mllib" % SparkVersion,
"org.postgresql" % "postgresql" % "9.3-1101-jdbc41",
"com.typesafe.slick" %% "slick" % "3.1.1",
"com.typesafe.slick" %% "slick-hikaricp" % "3.1.1",
"com.typesafe.slick" %% "slick-codegen" % "3.1.1"
),
dependencyOverrides ++= Set(
"org.slf4j" % "slf4j-api" % Slf4jVersion,
"org.slf4j" % "jcl-over-slf4j" % Slf4jVersion,
"org.slf4j" % "jul-to-slf4j" % Slf4jVersion
),
dependencyOverrides in test := Set(
"org.slf4j" % "slf4j-nop" % "1.6.4"), //no-op logger for slick
我已经尝试过的一些事情,其中没有一项有效:
logback.xml
添加到测试资源
logging.properties
commons-logging.properties
和.level=WARN
来测试资源
logger.scala.slick=WARN
application.conf
答案 0 :(得分:0)
只需将此行添加到logback.xml
:
<logger name="slick" level="WARN" />
答案 1 :(得分:0)
Slick正在使用Log4j进行日志记录。奇怪的是,只需在项目中添加一个空的src/test/resources/log4j.properties
文件,就可以在测试运行期间将其静音。