4

$ {variablename}構文を使用して、log4j構成ファイルのシステムプロパティを使用できます。

Eclipse変数(プロジェクト名など)とMaven変数(アーティファクトIDなど)もそこに含めて、それぞれのビルド中にそれらを置き換えることはできますか?

4

1 に答える 1

6

Eclipse変数(プロジェクト名など)とMaven変数(アーティファクトIDなど)もそこに含めて、それぞれのビルド中にそれらを置き換えることはできますか?

後者(Maven変数)の場合、リソースフィルタリングを使用できます。<filtering>POMに要素を追加し、次のように設定してアクティブにしtrueます。

<project>
  ...
  <build>
    ...
    <resources>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
      </resource>
      ...
    </resources>
    ...
  </build>
  ...
</project>

また、リソースファイルで使用されているようなMavenプロパティ${project.artifactId}は、その値に置き換えられます。フィルタリングするリソースをより細かく制御するためにincludes/を定義できます。excludes例については、上記のリンクを参照してください。

前者(Eclipse変数)の場合、Mavenはそれらを認識しないため、明らかにこのソリューションは機能せず、実際にはMavenフィルタリングに固執することをお勧めします(Mavenビルドが参照である必要があります)。

m2eclipseを使用している場合、これはEclipse内で透過的に機能します。

も参照してください

于 2010-07-17T02:06:05.383 に答える