具有多个映射的maven rpm插件

时间:2013-12-23 03:10:38

标签: maven rpm-maven-plugin

我正在构建一个包含3PP软件和其他配置文件的rpm包。如果我不包含配置文件,则rpm会正确构建,但是当我包含配置文件时,rpm构建但在实验室中安装3PP软件失败。 这是我的pom.xml的快照:

 <properties>
    <rpm-root>/opt</rpm-root>
    <comp-name>mycompany</comp-name>
    <install-path>mgmt</install-path>
</properties>
<build>
  <plugins>
    <plugin>
     <groupId>org.codehaus.mojo</groupId>
     <artifactId>rpm-maven-plugin</artifactId>
     <configuration>
          <mappings>
            <mapping>
               <directory>${rpm-root}</directory>
               <configuration>true</configuration>
               <sources>
                   <source>
                      <location>src/main/binary</location>
                   </source>
               </sources>
            </mapping>
            <mapping>
              <directory>${rpm-root}/${comp-name}/${install-path}/config</directory>
              <directoryIncluded>false</directoryIncluded>
              <configuration>true</configuration>
              <sources>
                  <source>
                     <location>src/main/config</location>
                  </source>
              </sources>
           </mapping>
     </mappings>
   </configuration>
 </plugin>

在src / main / binary中这就是我所拥有的: ls -ltr src / main // binary / opendj

opendj是我正在打包的3PP软件。

使用上面的pom.xml,这就是我得到的:

/opt/mycompany/mgmt/config/mgmt.properties
/opt/opendj/Legal/license_to_accept.txt
/opt/opendj/QuickSetup.app/Contents/Info.plist

在这种情况下,3PP(opendj)的安装失败

如果我没有在rpm插件中包含配置文件,这就是我得到的:

**/opt
/opt/opendj**
/opt/opendj/Legal
/opt/opendj/Legal/license_to_accept.txt
/opt/opendj/QuickSetup.app
/opt/opendj/QuickSetup.app/Contents
/opt/opendj/QuickSetup.app/Contents/Info.plist

你可以看到,在这种情况下,包会创建目录/ opt和/ opt / opednj等。 在这种情况下,3PP(opendj)的安装成功。

谢谢!

0 个答案:

没有答案