未找到 WindowsAnsiOutputStream class

WindowsAnsiOutputStream class not found

当我启动 Micronaut 项目时,在 IntelliJ 中它向我显示 运行 框错误

Caused by: java.lang.ClassNotFoundException: org.fusesource.jansi.WindowsAnsiOutputStream

我知道这可以使控制台输出更好,但我没有找到解决方法。项目 运行 成功,但我想尝试修复它...

Windows 上 Logback 中的彩色日志记录存在问题。要解决此问题,您可以在 logback.xml 配置文件中将 withJansi 设置为 false

<configuration>
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <withJansi>false</withJansi>
        <encoder>
            <pattern>%cyan(%d{HH:mm:ss.SSS}) %gray([%thread]) %highlight(%-5level) %magenta(%logger{36}) - %msg%n</pattern>
        </encoder>
    </appender>
    ...
</configuration>

还为此创建了一个问题,请参阅:https://github.com/micronaut-projects/micronaut-core/issues/1521

之前的回答删除了错误,但没有解决问题。 如果您阅读 logback.xml 上的评论,您会看到 Windows 上有一个 Java 的库,它将显示带有颜色的日志。

我不知道您使用的是 Maven 还是 SBT,但添加下一个依赖项将解决您的问题。

马文:

<dependency>
  <groupId>org.fusesource.jansi</groupId>
  <artifactId>jansi</artifactId>
  <version>2.3.4</version>
</dependency>

Sbt:

libraryDependencies += "org.fusesource.jansi" % "jansi" % "2.3.4"

https://search.maven.org/artifact/org.fusesource.jansi/jansi/2.3.4/jar