2

私は実行可能なjarを構築し、log4jを使用しました。最初にJava6を使用して構築しましたが、完璧に動作していました.しかし、JDKをバージョン1.7に更新してプロジェクトを再度構築すると、ファイルが見つからないため、log4j.propertiesファイルが見つからないようです.私のログファイルとコンソールのログ形式も間違っています。

4

2 に答える 2

3

「log4j.properties」がルート フォルダーに存在することを確認するために、.JAR ファイルを抽出しましたか? 名前が正しいことを確認していますか (質問では「log4j.perperties」という名前になっています)。

トラブルシューティングの提案:

  1. 「-Dlog4j.debug」フラグを指定してアプリを実行し、log4j の出力を確認します
  2. jar パッケージ化の問題を回避するために、「-jar」なしでプロジェクトを実行します (例: 「java -cp ./xxx.jar com.pkg.AppClass」)。
  3. log4j.properties ファイルのエンコーディングを調べる
  4. アプリケーション内で log4j の手動初期化を試みます。最初に外部ファイルを使用し、次に内部クラスパス ファイルを使用します。

JDK7とlog4jが数分間グーグルで競合していることは明らかではないため、「JDK7の既知の問題」のようには見えません。

于 2012-06-12T05:30:44.560 に答える
1

同様の問題が発生し、エントリが正しい場合でもログが記録されませんでした。後で、jarファイルの1つ(jxls-reader-0.9.6.jar)にファイルlog4j.xmlがあり、それが最初にロードされてlog4jログプロパティファイルとして使用されていたため、ログを受信しなかったことがわかりました。log4j.xmlをjarから削除しましたが、完全に正常に機能しました。

あなたは同様の問題を抱えているかもしれません、それが同様の解決策かもしれないことを願っています。

于 2012-09-13T12:43:02.983 に答える