Archives

You are currently viewing archive for 01 July 2006

[メモ] 01 July 2006 はてなブックマーク - M2でマルチプロジェクトでWARのリソースの指定方法 Twitterでつぶやく

M2でマルチプロジェクトでWARのリソースの指定方法

Maven2でWARを作るときクラスパスではなくWEB-INF以下などにリソースをおくことが良くあるが、そんな際にこんな指定をすることで通常のリソースファイルと同様にリソースのフィルタリングができる。
 <plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-war-plugin</artifactId>
   <version>2.0</version>
   <configuration>
  <warSourceDirectory>src/main/webapp</warSourceDirectory>
  <webResources>
   <resource>
    <directory>src/main/webapp</directory>
    <filtering>true</filtering>
     <includes>
      <include>**/velocity.properties</include>
      <include>**/web.xml</include>
     </includes>
    </resource>
   </webResources>
  </configuration>
 </plugin>
ただ、上記の場合一点問題があり、マルチプロジェクトにした際相対パスになってしまい、親プロジェクトのディレクトリをベースにしてしまう。
↑これで1時間はまったorz
なので正しくは、下記のように記述するべき
<warSourceDirectory>${basedir}/src/main/webapp</warSourceDirectory>
  <webResources>
   <resource>
    <directory>${basedir}/src/main/webapp</directory>
ちなみに、web.xmlとかをUTF-8で記述して日本語混ぜると文字化けしてトラぶる。
↑ひょっとしてリソースフィルタの読み込み書き込みがOSデフォルト?
«Prev || 1 || Next»