(src/main/webapp)
私はJava Webアプリを持っています.warにコピーしたくない標準のwebappソースディレクトリ内にいくつかのフォルダーがあります(exploded
またはpackaged
)。
これらのファイルをコピーしたくない理由の 1 つは、爆発した war 内で .js および .css ファイルに対して YUI JS & CSS ミニマイザー & コンプレッサーを実行するためです。除外したいファイルは、圧縮フェーズ中にエラーを生成します。戦争に加担させたくないもう 1 つの理由は、webapp 内に存在する単一ページの JS アプリのテストをサポートしていることです (それらはnode
/に依存するクライアント側の JS テスト スクリプトですangular.js
)。
以下は、 の関連セクションですPOM.xml
。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>parent-resources</id>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<overlays>
</overlays>
<webappDirectory>${project.build.directory}/${project.build.finalName}-work</webappDirectory>
</configuration>
<phase>generate-sources</phase>
<goals>
<goal>exploded</goal>
</goals>
</execution>
</executions>
</plugin>
warSourceExcludes
特定のパスを除外するために使用しようとしましたが、失敗しましたが、役に立ちませんでした。私の使用例を以下に示します。ここで、client/
は直下のフォルダーsrc/main/webapp
です。
<configuration>
...
<warSourceExcludes>
<excludes>
<exclude>
client/
</exclude>
</excludes>
</warSourceExcludes>
...
</configuration>
Web アプリのソース ディレクトリ内の特定のパスや個々のファイルを、爆発的な戦争に含まれないようにする正しい方法は何ですか?
アップデート
@maba からの提案に続いて、次のように構成を更新しました。
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<overlays>
</overlays>
<webappDirectory>${project.build.directory}/${project.build.finalName}-work</webappDirectory>
<warSourceExcludes>client/</warSourceExcludes>
</configuration>
フォルダ はclient/
まだコピーされています。何か案は?