1. ホーム
  2. java

[解決済み] Windows版TomcatのLog4j2で "unable to instantiate org.fusesource.jansi.WindowsAnsiOutputStream" という警告が発生する。

2022-02-18 13:06:56

質問

Tomcat8でWebアプリをデプロイしていますが、開発環境はWindows7 x64のEclipse(Luna)です。 私はちょうど私のコードでlog4j2を統合するのを終えたところです。 Tomcatを起動すると、次の警告が表示されます。

WARN Unable to instantiate org.fusesource.jansi.WindowsAnsiOutputStream

広範囲にググってみましたが、私の問題に関連する質問は見当たりませんでした。このクラスがログファイルに色付けをすることになっていることはわかりました。私はこの機能には興味がありません。

log4jの設定は以下の通りです。

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
  <Appenders>
    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
    </Console>
  </Appenders>
  <Loggers>
    <Root level="TRACE">
      <AppenderRef ref="Console"/>
    </Root>
  </Loggers>
</Configuration>

解決方法は?

OK、log4j2コードを掘り下げた後、私は指定される必要がある隠された実行時パラメータを見つけた。

-Dlog4j.skipJansi=true