1

他のプロジェクトの一部を含む自分のプロジェクトをパッケージ化しようとしています。これが私のスニペットですpom.xml

<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

スペックファイルを生成するときにファイル名を引用するようにMavenに指示する方法はありますか?実際にバーフィングしているのはrpmbuildのようですが、完全にはわかりません。

4

1 に答える 1

0

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

于 2012-04-27T01:19:59.877 に答える