1

ウィンドウズ 7 プロフェッショナル

エクリプス 3.7.2

別の IDE から Eclipse に移行しています。以前使用していたのと同じ ANT build.xml ファイルを使用してプロジェクトをコンパイルしています。私はそれを行います

  1. プロジェクト ビューで自分のプロジェクトを強調表示する
  2. ツリー ノードの展開
  3. そこに私のbuild.xmlファイルを見つける
  4. 私のbuild.xmlファイルを右クリック
  5. 実行 > Ant ビルドの選択

うまく機能しますが、いくつかビルドするたびに、Eclpise は次の場所にある log4j.properties ファイルを食べます。

C:\AllProjects\Workspace\acme\war\WEB-INF\classes\log4j.properties

Eclipse は基本的に *.class ファイルではない WEB-INF\classes 内のすべてのファイルを食べます。

これを実現するために私は何をしていますか、どうすればそれを止めることができますか?

ありがとう

4

2 に答える 2

1

Project Explorer で選択した後:

プロパティ > Java コンパイラ > ビルド > 出力フォルダ

「プロジェクトのクリーニング時に出力フォルダーをスクラブする」のチェックを外します

私は時間テストANT build.xmlを使用してコンパイル、ビルド、およびクリーニングを行っているため、これは私にとっての解決策です(すべての人ではないかもしれません)。私は Eclipse の自動ビルドをオンのままにしておくので、コンパイルする前に、I タイプとしてこれらの優れたエラー通知を受け取ります。

于 2013-09-11T17:40:34.767 に答える
1

ビルドに Eclipse の代わりに ant を使用しているため、プロジェクトを自動的にビルドする設定をオフにしてみてください。

プロジェクトを選択し、画面上部のメニュー バーでオプションを選択ProjectしてオフにしBuild Automaticallyます。

編集:セカンドオピニオン

WEB-INF/classesビルドを行うたびに、log4j プロパティ ファイルをフォルダーにコピーする Ant タスクを追加します。これの優れた利点の 1 つは、異なるビルド タイプ (デバッグ、リリースなど)に対して異なるプロパティ ファイルを持つことができ、手動で変更する必要がないことです。また、バージョン管理を使用している場合、これにより管理が容易になります。

ファイルをソース ディレクトリにコピーlog4j.propertiesし、ant ビルド ファイルに次のような内容を追加します。

<target name="copy-log4j-property-file">
    <copy file="src/log4j.properties" todir="WEB-INF/classes" />
</target>

<target name="build" depends="copy-log4j-property-file">
    <!-- the rest of your build things here -->
</target>
于 2013-09-06T19:28:02.190 に答える