2011-01-04 8 views
2

私はwarファイルをビルドするmavenプロジェクトを持っています。Maven YUI Compressor Pluginプロセスリソースフェーズが実行されないのはなぜですか?

私のmavenビルドファイルにyuiコンプレッサーを含めると、src/main/resources /にあるファイルがjsファイルと無関係になり、プロセスリソースが空になって処理されます。本当に奇妙な、本当に。 yuicompressorプラグインがサイクルから削除されると、他のリソースはうまく処理されます。

誰でもこれを見たことがありますか?

ここに私の設定です:

YUIコンプレッサーの設定:

<plugin> 
      <groupId>net.alchim31.maven</groupId> 
      <artifactId>yuicompressor-maven-plugin</artifactId> 
      <version>1.1</version> 
      <executions> 
       <execution> 
        <goals> 
         <goal>compress</goal> 
        </goals> 
        <phase>process-resources</phase> 
       </execution> 
      </executions> 
      <configuration> 
       <excludes> 
        <exclude>**/extjs*/**/*.js</exclude> 
        <exclude>**/extjs*/**/*.css</exclude> 
       </excludes> 
       <nosuffix>true</nosuffix> 
      </configuration> 
     </plugin> 

とリソースの設定、ターゲットディレクトリにコピーする際に空のファイルを含む:

<resources> 
     <resource> 
      <directory>src/main/resources</directory> 
      <filtering>true</filtering> 
      <includes> 
       <include>**/*.properties</include> 
       <include>**/*.xml</include> 
      </includes> 
     </resource> 
    </resources> 

へrepeat:resourcesディレクトリー内のファイル(log4j.xmlなど)がターゲット・ディレクトリーにコピーされていますが、それらは空です。

ありがとうございました!

答えて

1

何が起こっているのかは、YUI Compressorプラグインは、暗黙的に圧縮するための場所の1つとしてリソースディレクトリを持っていることです。リソースプラグインが実行された後に実行され、xmlファイルと.propertiesファイルにjavascriptが含まれていないため、空のファイルでリソースディレクトリ内のxmlおよび.propertiesファイルを上書きします。私の修正は、プラグインの設定に新しい除外を追加しました:

xmlまたは.propertiesファイル接尾辞のない任意のリソースがまだYUIコンプレッサによって解析されますので、これは、しかし、まだ理想的とはいえません。私は元の問題に戻ります。

私は、これは除外しようとしたが、それはうまくいきませんでした:

<exclude>**/resources/*.*</exclude> 

以上が動作、またはどのないにYUIプラグインにを伝えるためにアイデアを持っていないだろう、なぜ誰もが任意のアイデアを持っていませんリソースの何かを処理する?

関連する問題