2012-04-04 20 views
1

他のプロジェクトの一部を含む自分のプロジェクトをパッケージ化しようとしています。ここに私のpom.xmlからの抜粋です:rpm-maven-pluginを使用している場合、名前にスペースを含むファイルを含めるにはどうすればよいですか?

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>rpm-maven-plugin</artifactId> 
    ... 
    <mappings> 
    ... 
    <mapping> 
     <directory>${install.target}/contrib</directory> 
     <sources> 
     <source> 
      <location>src/main/resources</location> 
      <includes> 
      <include>contrib/**/*</include> 
      </includes> 
     </source> 
     </sources> 
    </mapping> 
    ... 
    </mappings> 
</plugin> 

しかし、私はRPMをビルドしようとすると、それは次のようなメッセージ(数回繰り返す)でエラーアウト:

error: Two files on one line: /install/path/contrib/project/licences/Apache 
error: File must begin with "/": Software 
error: Two files on one line: /install/path/contrib/project/licences/Apache 
error: File must begin with "/": Licence 
error: Two files on one line: /install/path/contrib/project/licences/Apache 
error: File must begin with "/": v2.0.txt 

は、当然、別のプロジェクトにファイルがありますApache Software Licence v2.0.txt

specファイルを生成するときにファイル名を引用するようにmavenに指示する方法はありますか?それは実際にはbarfingのrpmbuildのようですが、私は完全にはわかりません。

+0

これは、現在のMavenプロジェクトの外部にあるファイルを使用することを意味しますか?さらに、通常、ライセンス情報を含むLICENSE.txtというファイルがあります。 – khmarbaise

+0

はい、私は別のプロジェクトをとり、src/main/resources/contribフォルダにコピーしています。他のプロジェクトはmavenプロジェクトではないので、依存関係として入れることはできません。そして、私はそのファイルが何であるかを制御しません。通常、それは単に「ライセンス」であると理解していますが、この場合、プロジェクト保守者は「Apache Software License」にすることにしました。 – MikeD

+1

http://jira.codehaus.org/browse/ MRPM-102は関連する可能性がありますか? – user944849

答えて

0

http://jira.codehaus.org/browse/MRPM-102は、プラグインがファイル名のスペースを正しく処理しないという問題を説明しています。パーサは、スペースをファイル間の区切り文字として解釈し、ビルドに失敗します。 2012年4月14日に承認されたパッチが提出され、プラグインのバージョン2.1で最終的にリリースされました。夜間のビルドが利用可能かどうかは不明です。

関連する問題