2013-04-27 153 views
2

我使用的是sbt-idea插件,在我的metaproject和主项目中,我有一个设置为logLevel := Level.Warn。这可以有效地消除我大部分版本的所有子警告消息,但sbt-idea会持续打印info消息。可以为sbt插件更改日志级别,说sbt-idea?

我猜测,也许该插件在logLevel被应用之前得到加载,并以某种方式获得对不同级别的记录器的引用?该插件特别是似乎没有做任何特别的日志记录,除了它似乎to ask the state for its logger at initialization。它可能最终会成为我的设置应用后的另一个不同的记录器对象?

我无法弄清sbt的哪个部分实际上会消耗logLevel设置键来查看它是创建新的记录器还是改变现有的记录器。

回答

2

使用--warn--error之前gen-idea

$ sbt --warn gen-idea 

$ sbt --error gen-idea 

Change the logging level globally更多了最新的信息(双关语意)。

要小心,虽然,你可能真的好想info是你沉默gen-idea命令后,因为它可能需要一段时间才能完成,没有获取同时打印出来。

因此使用另一个技巧并在gen-idea之前执行warnerror命令可能会更有用。

$ sbt warn gen-idea 
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins 
[info] Set current project to aaa (in build file:/Users/jacek/sandbox/stackoverflow/16256180/) 

有了这个,你会看到东西,可能会或可能不会有所帮助的控制台上打印出来。

相关问题