1

我正在使用 Maven RPM 插件构建一个包,它在 .spec 文件中生成 %files 部分,这种方式会在安装过程中导致冲突。我想在 /usr/bin 中安装一个文件,但 .spec 文件包含以下指令:

%attr(755,root,root) /usr/bin

由于与另一个已经拥有该目录的软件包发生冲突,这会导致 RPM 安装失败。

我想做的是让 Maven 直接指定文件名,这样可以避免整个问题。这是该特定文件的映射部分:

          <mapping>
            <directory>/usr/bin</directory>
            <filemode>755</filemode>
            <sources>
              <source>
                <location>src/main/scripts/foobar.sh</location>
                <destination>foobar</destination>
              </source>
            </sources>
          </mapping>

有什么建议么?

(我为此在插件错误跟踪器上打开了一个问题)

4

2 回答 2

2

正如错误中所指出的,directoryIncluded[1] 映射控制此行为。如果将此设置为 false,您将获得所需的行为。

[1] - http://mojo.codehaus.org/rpm-maven-plugin/map-params.html#directoryIncluded

于 2014-04-29T20:09:08.567 回答
0

其中一位维护人员在问题跟踪器上回答了我的问题。事实证明directoryIncluded映射完全符合我的要求。

于 2014-04-29T20:09:53.487 回答