1

ログにlog4j2を使用していますが、エラーメッセージのみが表示されます。これはデフォルトの構成だと思います。私は次のように作成log4j2.xmlしました:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <appenders>
   <Console name="Console" target="SYSTEM_OUT">
     <PatternLayout pattern=" %msg%n"/>
   </Console>
  </appenders>
   <loggers>
    <logger name="log4jExample" level="trace">
      <appender-ref ref="Console"/>
    </logger>
   <root level="error">
     <appender-ref ref="Console"/>
   </root>
   </loggers>
 </configuration>

ファイル内のCLASSPATH変数にそのパスを記載しました。~/.bashrcしかし、まだこの XML ファイルを選択していません。実行時にのみ構成ファイルについて言及する必要がありますか。~/.bashrcファイルの内容:

 export CLASSPATH=$CLASSPATH:/home/user/Pradi/config/log4j2.xml
4

1 に答える 1

0

クラスパスの構成は、アプリケーションによって大きく異なります。それはJava SEアプリケーションですか?アプリケーションが jar ファイルにパッケージ化されている場合は、META-INF ファイルでクラスパスを定義できます。コンソールから実行する単純なクラスである場合は、この log4j2.xml をパッケージ構造のルートに配置してみてください。

このクラスを実行するために使用しているフォルダー構造は何ですか?

編集:通常、構成ファイルは異なるディレクトリに配置されますが、完全に異なるフォルダー構造ではありません。src/main/java のようなソース フォルダーと、別の src/main/resources フォルダーを用意するのが一般的です。コンパイル後、通常、ファイルは同じルート フォルダー (target/classes など) に配置されます。簡単なテストでは、ファイルを同じフォルダーに配置します。/home/user/Pradi からクラスを実行している場合、コマンドは「java -classpath /home/user/Pradi log4jExample」になります。クラスをどのようにコンパイルしているかを教えていただければ、これらのファイルを整理する方法についてさらに詳しいガイダンスを提供できます。

于 2012-12-24T13:39:42.300 に答える