Maven RPM插件无法生成正确的%files部分

时间:2014-04-29 15:53:52

标签: maven scriptlet mojo rpm-maven-plugin

我正在使用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>

有什么建议吗?

(我已经在插件错误跟踪器上打开了issue

2 个答案:

答案 0 :(得分:2)

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

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

答案 1 :(得分:0)

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