4

使用 JUnit 4 运行 Spring-Boot 1.4 应用程序单元测试(通过 SLF4J 和 Log4j 2.x 记录),我的输出窗口开始:

SYSTEM_OUTPUT/Library/Java/JavaVirtualMachines/jdk1.8/Contents/Home/bin/java -ea -Didea.launcher.port=7534

然后之后的每一行都以“NORMAL_OUTPUT”结尾,à la:

14:48:36.135 调试 [main] org.springframework.test.context.BootstrapUtils - 从类 [org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate]NORMAL_OUTPUT 实例化 CacheAwareContextLoaderDelegate

这只是一种刺激,但摆脱它会很好。

我 98% 确定这在 2016.3 之前没有发生(我使用的是“终极”版)。

(顺便说一句:“NORMAL_OUTPUT”和“SYSTEM_OUTPUT”标记没有出现在磁盘日志文件中,这告诉我这不是由于 log4j 2.x。SLF4J 的 jcl-over-slf4j jar 在路径中,以捕获 Spring 的日志记录。任何一个版本都没有变化。)

4

1 回答 1

0

我怀疑这可能与配置的模式布局有关。

我最初有这个,它在每行的开头放置一个新行和空格(因为 %n%throwable),IDE 的格式可能无法理解格式说明。

<PatternLayout pattern="%highlight{%d [%t] %notEmpty{[%marker] }%-5level: %msg%n%throwable}"/>

然后我把它改成了这个,它更好:

<PatternLayout pattern="%highlight{%d [%t] %notEmpty{[%marker] }%-5level: %msg%notEmpty{%throwable}}%n"/>
于 2017-11-07T10:49:48.913 回答