2009-06-16 12 views
4

Log4Jをはじめて使用し始めました。私はlog4j.propertiesファイルを作成し、それをEclipseのプロジェクトのフォルダに入れました。私は自分のアプリケーション用のRunコンフィグレーションも作成しました(デフォルトのRunコンフィグレーション、余分なオプションはありません)。実行設定のEclipseとクラスパスについての質問

ここで、アプリケーションを実行しようとしましたが、log4jが初期化できないというエラーメッセージが表示されます(プロパティファイルを読んでください)。私はプロパティファイルがクラスパスになければならないことを知っているので、明らかに実行コンフィギュレーションはクラスパスを正しく設定していません。

私は私の実行コンフィギュレーションのクラスパス]タブに行けば、私は次のようしている:

  • ブートストラップエントリ
  • ユーザー・エントリ
    • MyApplicationを(デフォルトのクラスパス)
    • のlog4j-1.2 .15 .jar - C:\ Workspace \ MyApplication \ lib

しかし、プロジェクトのフォルダを手動で追加した場合([フォルダの追加]、[詳細設定]、[MyApplication]をクリックした場合)、log4jは自身を初期化できます。

なぜそうですか?なぜ私はプロジェクトのフォルダを手動で追加しない限り、log4jがプロパティファイルを見つけることができないのですか?このフォルダはデフォルトではクラスパスにありませんか? (上記の出力はそうであることを示唆しています)

答えて

2

いいえ、プロジェクトフォルダ自体はデフォルトでクラスパスにはありません - プロジェクトの出力フォルダは(通常はbinまたはclassesという名前のサブフォルダです)。

log4j.propertiesをルートフォルダではなくプロジェクトのソースフォルダに配置すると、すべてが機能するはずです(ソースフォルダ内のソースファイル以外は自動的に出力フォルダにコピーされます)。

一般的に、実行コンフィギュレーションのクラスパスを混乱させる必要はありません。ほとんどの場合、プロジェクトのプロパティでビルドパスを変更する(またはあなたのケースで正しく使用する)方が適切です。

1

デフォルトでは、プロジェクトフォルダはクラスパスに追加されません。クラスパスには、デフォルトでクラスフォルダのみが含まれています。

他のフォルダをクラスパスに手動で追加する必要があります。

0

あなたは2つのオプションがあります。

  • はlog4j.propertiesが名前のリソースまたは解像度は通常、追加のソースフォルダを作成し、log4j.propertiesが
  • を提出入れ
  • あなたのsrcフォルダの下にファイルを置きます

ここで動作しない理由は、ファイルがプロジェクトのクラスパスにないからです。プロジェクト>プロパティ> Javaビルドパス

関連する問題