2016-05-24 6 views
3

maven-assembly-pluginで正規表現を使用しようとしています。 ABC502で始まる名前のファイルがあります。私はサフィックスの3または4のRPMだけをコピーしようとしています。下の1つは機能しません。 RPM名は正規表現が動作しませんMavenファイルセット

ABC5023-buildnumber.rpm

ABC5024-buildnumber.rpm

ABC5025-buildnumber.rpm

ABC5026-buildnumber.rpm

<fileSet> 
    <directory>${project.build.directory}/tar_content/stackcontents/</directory> 
    <outputDirectory>scripts/data/rpms/</outputDirectory> 
    <includes> 
     <include>%regex[ABC502(3|4)]-*.rpm</include> 
    </includes> 
    <fileMode>0755</fileMode> 
    <directoryMode>0755</directoryMode> 
</fileSet> 
以下に示します。
+0

完全なアセンブリ記述子を表示できますか?私が知っている限り、記述子のそれとは別に正規表現のサポートはありませんか? (または、その参照へのリンクを与えることができますか?)... – khmarbaise

+0

@khmarbaise確かに正規表現http://maven.apache.org/plugins/maven-assembly-plugin/advanced-descriptor- topics.html#Using_Regular_Expressions_to_Exclude_Files。 – Tunaki

答えて

4

を使用するとを使用して%regex[...]構文のファイルを含めるか除外するには、すべての式を正規表現で構成する必要があります。正規表現部分を通常の部分と混在させることはできません。

はそのため、あなたはABC5023またはABC5024で始まるすべてのRPMファイルが含まれます

<fileSet> 
    <directory>${project.build.directory}/tar_content/stackcontents/</directory> 
    <outputDirectory>scripts/data/rpms/</outputDirectory> 
    <includes> 
     <include>%regex[ABC502(3|4)-.*?\.rpm]</include> 
    </includes> 
    <fileMode>0755</fileMode> 
    <directoryMode>0755</directoryMode> 
</fileSet> 

これを使用する必要があります。

関連する問題