Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sbt 在构建中使用SLF4J_Sbt_Slf4j - Fatal编程技术网

Sbt 在构建中使用SLF4J

Sbt 在构建中使用SLF4J,sbt,slf4j,Sbt,Slf4j,我的构建运行Grunt for js/css缩小,使用。我通过定义一个grunt任务为它做了一个基本的sbt包装,所以当我在sbt控制台中运行“grunt”时,它会通过Node.js在我的项目资源上运行grunt 我正在使用的库正在通过SLF4J进行日志记录。(使用SLF4J的类加载器查找机制。) 如何为它提供SLF4J记录器,以便它将输出记录到sbt控制台 我已经尝试过的一件事是从SLF4J编写一个StaticLoggerBinder的简单实现,并将其放入.my_project/project

我的构建运行Grunt for js/css缩小,使用。我通过定义一个grunt任务为它做了一个基本的sbt包装,所以当我在sbt控制台中运行“grunt”时,它会通过Node.js在我的项目资源上运行grunt

我正在使用的库正在通过SLF4J进行日志记录。(使用SLF4J的类加载器查找机制。) 如何为它提供SLF4J记录器,以便它将输出记录到sbt控制台

我已经尝试过的一件事是从SLF4J编写一个StaticLoggerBinder的简单实现,并将其放入
.my_project/project/src/main/scala/org/SLF4J/impl/StaticLoggerBinder.scala

但是,类加载器(sbt或slf4j)在类路径中找不到它…

好了,我修复了它。我为它写了一个图书馆。:-) 您可以在设置中包含库,引导SLF4J,然后开始


如果您在sbt内部,则应该使用sbt的日志API。这样,任务输出将与
最后一个任务一起工作。参见:示例。您应该能够使用process API将grunt进程直接管道传输到sbt记录器。感谢您的回答!问题是,根据设计,我使用的库通过SLF4J记录日志(因此它可以从多个构建工具中使用——例如,Maven提供了自己的日志实现,与sbt的实现不同,但Maven的日志和SLF4J之间有一个brigde,这使得这非常容易。据我所知,Gradle直接使用SLF4J。)我不确定sbt是否存在同样的情况?我不认为存在。然而,如果你愿意贡献的话,这(一个桥)听起来像是一个有用的sbt插件。